【发布时间】:2010-08-09 23:55:15
【问题描述】:
假设您运行以下命令:
ssh $host1 '而 [ 1 ];睡一觉; echo "来自 $HOSTNAME 的你好";完成' > /tmp/输出 ssh $host2 '而 [ 1 ];睡一觉; echo "来自 $HOSTNAME 的你好";完成' >> /tmp/输出 ssh $host3 'while [ 1 ];睡一觉; echo "来自 $HOSTNAME 的你好";完成' >> /tmp/输出然后输出将如下所示:
来自host1的你好 来自host2的你好 来自host3的你好 来自host1的你好 ...但是如果我把它改成
ssh $host1 '而 [ 1 ];睡一觉;猫 /some/large/file1.txt;完成' > /tmp/输出 ssh $host2 '而 [ 1 ];睡一觉;猫 /some/large/file2.txt;完成' >> /tmp/输出 ssh $host3 'while [ 1 ];睡一觉;猫 /some/large/file3.txt;完成' >> /tmp/输出所以每个主机的标准输出不适合单个缓冲区?数据会不会 在这种情况下保持文件[1-3].txt 的完整性,而不是顺序?是 其他文件的文件片段有可能在中间滑落 像这样的其他文件?
[file1_fragment1] [file2_fragment1] [file1_fragment2] [file1_fragment3] [file3_fragment1] ...【问题讨论】:
标签: linux ssh buffer stdout data-integrity