Cuando redirijo la salida de un comando a un archivo (por ejemplo, echo Hello > file
) ¿se garantizará que ese archivo tenga dichos datos justo después de que el comando salga? ¿O todavía hay una ventana muy pequeña entre las salidas de comando y los datos escritos en el archivo? Me gustaría leer el archivo justo después de que salga el comando, pero no quiero leer un archivo vacío.
echo
y >
no procesos separados (de corta duración)? ¿Y dónde se ejecuta la salida de echo
permanecer antes >
?
>
es redirección de shell. Es lo mismo que si el programa hubiera abierto el archivo nombrado para escribir y reemplazado stdout con él, que es exactamente lo que hace el shell.
file
contenido Hello
independientemente de si está enjuagado o no.