Pregunta ¿Cómo hacer eco de un EOF en bash? [cerrado]


Después de la búsqueda parece que el ascii de EOF es -1pero como puedo echo ¿fuera?

Mi propósito de hacer esto es probar si se comporta igual que presionar ctrl-d si yo solo echo afuera EOF.


7
2018-06-08 09:01


origen




Respuestas:


No hay manera de repetir un EOF. Un EOF solo se puede generar llegando al final de un archivo o invocando la pulsación de tecla vinculada a la eof ajuste terminal (Ctrlre por defecto) cuando el archivo que se está leyendo está vinculado a la terminal.


9
2018-06-08 09:10



no es EOF definido como -1 en stdio.h? ¿Por qué no podemos repetirlo si conocemos su valor ASCII? - locale
Y qué. Un int con el valor de -1 (o 4294967295 si consideramos la versión sin firma) no puede ser un carácter, ya que los caracteres solo pueden tener un valor de 0 a 255 inclusive. - Ignacio Vazquez-Abrams
como sabes que es un int ¿en primer lugar? - locale
Porque hago cosas como mirar el fgetc(3) página de manual - Ignacio Vazquez-Abrams


En bash podías escribir exec 1>&- para cerrar el descriptor de archivo conocido como stdout.

Como ya lo dijo Ignacio, EOF no es un personaje, así que la pregunta de cómo "repetir EOF" no tiene ningún sentido en primer lugar. Puede hacer eco de los caracteres (bytes) o puede cerrar un descriptor de archivo, pero nunca puede hacer eco de un EOF.


7
2018-06-08 13:53