我有这个文本文件,里面有多个bash命令。类似于它的一个例子就像这样
commands.txt - >
mkdir test
rm test '\t'
mkdir test1
rm test1 '\t'
mkdir test3
rm test3 '\t'
我希望能够做的是从文本文件中获取所有rm命令并与xargs同时运行它们,并在完成后获取所有mkdir命令并同时运行它们。
我从博客中得到了这个想法 -
grep' rm' commands.txt |读我的时候;做printf"%q \ n" " $ I&#34 ;;完成| xargs --max-procs = 3 -I CMD bash -c CMD
这种作品在我的命令中确实有一个' \ t'并且它不是逃避它而是它只是放一个t。我认为这与printf有关。有什么想法吗?
答案 0 :(得分:0)
这种作品在我的命令中确实有一个' \ t'和它的 没有逃避它而只是放一个t。我认为这必须要做 与printf。
你很亲密;这与read
有关。见 Bash Builtin Commands :
read
...-r
如果这样 给出了选项,反斜杠不作为转义字符。该 反斜杠被认为是该行的一部分。 ...
因此,如果您将read i
更改为read -r i
,则应该可以使用。