我正在尝试运行以下循环,但不幸的是,它创建了空文件。
for f in *.tex; do cut -d "&" -s -f1,2,4 $f | sed "s/$/\\\\\\\\/g" | sed "s/Reg. year/\$year/g" | sed "s/=\([0-9]\{4\}\)/^\{\1\}\$/g" | sed "/Counterfactual/d" | sed "/Delta/d" | sed "/{2014}/d" | sed "/^\s*&\s*\&/d" > $f; done;
当我在单个文件上运行命令时(用filename.ext替换$ f),它运行良好。
答案 0 :(得分:0)
整个循环过程都可以进行,您可以在执行完之后将所有命令放在尖括号中
{ cut ... | sed ... | ... }
或者您可以使用xargs:
find ./ -type f -name "*.tex" -print0 | xargs -0 cut -d "&" -s -f1,2,4 | sed ... | ...