我有一个在 AIX ksh 中运行的脚本,如下所示:
wc dir1/* dir2/* | {awk command to rearrange output} | {grep command to filter more} > dir2/output.txt
此行的前提条件是 dir2/output.txt 不存在。
问题是 dir2/output.txt 已经包含在输出中(它在数百次中发生了几次,没有问题)。dir1 和 dir2 是 NFS 安装的。
是不是和wc
--第一个参数的执行时间长有关系?我认为不是,因为我尝试了以下方法:
wc `sleep 5` *.txt > out.txt
即使在这种情况下 out.txt 也不会列出自己。
最后一点,通配符在此示例中使用,它们在实际脚本中使用。那么如果扩容先发生,为什么会出现这个问题呢?
dir2/output.txt 是在什么时候实际创建的?