批处理,在bash中将文件名添加到txt

批处理,在bash中将文件名添加到txt

我有一个 bash 命令

find /any/directory/ -type f -printf "%f\n" >> data.txt

将指定目录中存在的所有文件名(例如5r32a.xml和)放入.我想添加文件名(使用命令)以便在 中添加此类代码,例如:5r343.xmldata.txt.txt

cat ../raw_orig/5r32a.xml tmp_file ../raw_orgg/bab-aux-cal.xml > ./5r32a.xml
cat ../raw_orig/5r343.xml tmp_file ../raw_orgg/bab-aux-cal.xml > ./5r343.xml
# And etc

我怎样才能使用终端来做到这一点?如何指定行和列?

答案1

这就是您正在寻找的。

find /any/directory/ -type f -printf "cat ../raw_orig/%f tmp_file ../raw_orgg/bab-aux-cal.xml > ./%f\n" >> data.txt

答案2

另一种选择:

for a in $(cd any/directory; ls *xml)
do 
   echo "cat ../raw_orig/$a tmp_file ../raw_orgg/bab > ./$a" >> data.txt
done

相关内容