Bash 如何循环遍历dir中的所有文件,运行脚本,并将它们写入其他dir中的匹配文件中

Bash 如何循环遍历dir中的所有文件,运行脚本,并将它们写入其他dir中的匹配文件中,bash,zsh,Bash,Zsh,我在目录中有文件: mkdir in_dir echo 'a' > in_dir/file1.txt echo 'b' > in_dir/file2.txt echo 'c' > in_dir/file3.txt mkdir out_dir 我有一个命令,它使用将输出写入新文件。我想在in_dir中的所有文件上运行它,并在匹配的文件名下将输出写入out_dir 这将完成第一部分,在每个文件上运行(虚拟)命令 #!/bin/zs for file in in_dir/*; (

我在目录中有文件:

mkdir in_dir
echo 'a' > in_dir/file1.txt
echo 'b' > in_dir/file2.txt
echo 'c' > in_dir/file3.txt

mkdir out_dir
我有一个命令,它使用
将输出写入新文件。我想在
in_dir
中的所有文件上运行它,并在匹配的文件名下将输出写入
out_dir

这将完成第一部分,在每个文件上运行(虚拟)命令

#!/bin/zs
for file in in_dir/*;
(cat $file ; echo '1')

我想让'file1.txt'输入输出目录,内容'a1','file2.txt'和'b1'等。

如果我理解得很好,你的脚本可以处理信息。您可以制作另一个脚本,如下所示:

#!/bin/bash

IFS=$'\n'

for i in `ls -1 ./dir_in` ; do
    ./yourscript "$(cat ./dir_in/$i)" > ./dir_out/$i
done

unset IFS

不要忘记获取此脚本
chmod+x
权限。

echo“$(cat$file)1”>“out\u dir/$file”的
out\u dir/file1.txt的内容是什么<代码>a
a1
?a1,我承认这不是很清楚