按顺序对文件运行命令

按顺序对文件运行命令

我试图弄清楚如何编写一个脚本,该脚本将按顺序对目录中的文件运行命令,并暂停每个命令以等待完成。这是一个例子。

cat >> text.txt && cat >> text2.txt

只要我手动键入每个文件,上面的命令就适用于这两个文件。我的个人项目有559个文件,即text1.txt...text559.txt。

我的最后一招是在终端中提取文件名列表,然后转到我的文本编辑器,然后构建一次性运行的脚本。如果可能的话,我想将其自动化,因此任何有关如何开始的建议将不胜感激。

答案1

您可能想查看for循环。在 中bash,它看起来像:

for file in "${list_of_files[@]}"
do
  run_command "$file"
done

可以"${list_of_files[@]}"是您在其他地方设置的数组,也可以将其替换为文件名的文字列表,也可以是文件名通配模式,例如text*.txt.

该循环将run_command使用单个参数运行,即$file您在该循环迭代中正在处理的参数,并将等待每个参数run_command完成,然后再进入下一个循环迭代。

相关内容