有时我在csh中使用相同的foreach操作,但是针对不同的目标文件。
如果我可以在一行命令中使用foreach命令,我就可以轻松地替换目标文件名以重复该过程。(我通常使用 `find . -name ...` 来查找目标文件)
为了回答这个问题,假设我想把所有 *.txt 文件连接起来。
如果我可以在一行中完成,我可以执行
如果我可以在一行命令中使用foreach命令,我就可以轻松地替换目标文件名以重复该过程。(我通常使用 `find . -name ...` 来查找目标文件)
为了回答这个问题,假设我想把所有 *.txt 文件连接起来。
$ foreach i (*.txt)
foreach? cat $i
foreach? end
我读了https://unix.stackexchange.com/questions/32873/running-a-full-foreach-command,并尝试过。
alias disp 'echo "foreach i (*.txt)"; echo "cat "\$"i"; echo "end"; | /bin/csh'
当我输入disp
时,它会显示Invalid null command
。如果我可以在一行中完成,我可以执行
!foreach:gs/\.c\>/.h/
(用.h替换.c)。
我应该如何做?