当我将命令的输出重定向到文件(例如echo Hello > file
)时,是否可以保证命令退出后该文件具有此类数据?还是在命令出口和写入文件的数据之间还有一个很小的窗口?我想在命令退出后立即读取文件,但是我不想读取空文件。
echo
并且>
不是单独的(短暂的)过程吗?echo
在>
执行之前,remains的输出在哪里?
>
是shell重定向。就像程序已打开要写入的命名文件并用它替换stdout一样,这正是Shell所做的。
file
包含内容都是操作系统的责任Hello
。