如何在多个文件上运行perl脚本并生成相同数量的已保存输出文件?

时间:2015-06-18 22:36:48

标签: perl command-line

我有一个简单的Perl脚本,我想在一个充满.txt文件的文件夹上运行。

我阅读How do I run a Perl script on multiple input files with the same extension?的答案,但不明白如何实施答案。

我有Google搜索等,并且不理解perlmonks的答案。

在我的Mac OS终端上,我正在使用

perl myscript.pl input.txt > output.txt

但我不知道如何在一个充满.txt文件的文件夹上运行它。

我会满足于生成一组新的修改后的.txt文件(每个输入一个输出)或编辑文件并用输出覆盖输入(如果这更容易)。

1 个答案:

答案 0 :(得分:1)

这是一个命令行/ bash问题,而不是perl问题,根据我的理解,你想对多个文件运行以下内容

perl myscript.pl input.txt > output.txt

最简单的方法是从终端

执行以下命令
find . -name "*.txt" -exec sh -c 'perl myscript.pl {} > {}.out' \;

这将获得与*.txt匹配的所有文件,并在--exec sh -c''\;之间执行命令,将{}替换为文件名。