如何为Linux目录中的所有文件运行脚本?

如何为Linux目录中的所有文件运行脚本?,linux,for-loop,cat,Linux,For Loop,Cat,这里是Linux新手,很抱歉(简单?)这个问题: 我在Linux中有一个名为script_run的脚本,如果我运行一次并手动指定文件名,它就可以正常工作。脚本读取输入文件,对数据进行插值,然后将插值后的数据保存到输出文件中。我希望输出文件具有相同的名称,只是添加了一个“\u interp”。我想为文件夹中的所有文件自动运行脚本。我该怎么做?下面是我的尝试,我正在文件文件夹目录中运行脚本,但它无法循环。谢谢你的帮助 FILEFOLDER=$* for FILES in $FILEFOLDER d

这里是Linux新手,很抱歉(简单?)这个问题:

我在Linux中有一个名为script_run的脚本,如果我运行一次并手动指定文件名,它就可以正常工作。脚本读取输入文件,对数据进行插值,然后将插值后的数据保存到输出文件中。我希望输出文件具有相同的名称,只是添加了一个“\u interp”。我想为文件夹中的所有文件自动运行脚本。我该怎么做?下面是我的尝试,我正在文件文件夹目录中运行脚本,但它无法循环。谢谢你的帮助

FILEFOLDER=$*

for FILES in $FILEFOLDER
do
script_run "
[--input ${FILES}]
[WriterStd --output tmp_output_${FILES}.txt]"

cat tmp_output_${FILES}.txt >> output_${FILES}_interp.txt
done

顺便问一下,这个奇怪的注释是怎么回事?您的脚本是否明确要求这样的格式?

可能与、、等重复。另请参见,(U&L.SE),(SO),(AskU)等。很抱歉,我觉得这些答案没有解决我的文件路径/目录命名问题,这是有效的。--input注释是script_run包的一部分,该包明确要求该格式。
#!/bin/bash

FILES=`ls *.*`
for FILE in $FILES
do
    script_run "[--input ${FILE}] [WriterStd --output tmp_output_${FILE}.txt]"
    cat tmp_output_${FILE}.txt >> output_${FILE}_interp.txt
done