【发布时间】:2011-03-04 10:45:19
【问题描述】:
一位同事正在尝试在 bash shell 脚本中截断文件:从二进制文件中提取两个前字节。
以下在 BSD/OS X 上运行良好(输出为“12”)但在 Linux 上运行良好(输出为空):
echo 1234 >test
head -c2 test | tee test >/dev/null
将head | tee 部分更改为在子shell 中运行
echo 1234 >test
(head -c2 test | tee test >/dev/null)
让它也能在 Linux 上运行。
为什么?
(特别对截断问题的解决方案不感兴趣,但解释为什么在不同风格的操作系统上行为不同。)
【问题讨论】:
-
有那么一会儿,我虽然你还在运行 BSD/OS,但想知道 X 与它有什么关系:)