有人可以解释为什么在尝试对多个文件运行 ex 命令脚本时,这是有效的:
for x in `ls *`;do ex $x <excmds;done;
但这不是:
ls *|xargs -i ex {} <excmds
第一个将为每个文件执行 ex 并在“excmds”中运行命令第二个,我不确定它做了什么,但它不会更改任何文件。我猜重定向是一个问题,并且不会对 xargs 的每次执行起作用?有没有办法用 xargs 做到这一点?(我在 xargs 上提出的另一个问题 - 也许我应该停止使用它:()