我有一个简单的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文件(每个输入一个输出)或编辑文件并用输出覆盖输入(如果这更容易)。
答案 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'
和'\;
之间执行命令,将{}
替换为文件名。