我有FramesList.txt
,该文件包含5个.xml
文件名。没有生成路径,因为列表是由xml ls > FramesList.txt
命令创建的。
我想在列出的每个.xml
文件上运行一个xmlstarlet
命令。
FramesList.txt
FR0391W.xml
FR0921S.xml
FR0193A.xml
FR0192B.xml
FR0132E.xml
那看起来怎么样?这是一个循环吗?
您可以使用xargs
:
xargs < FramesList.txt -n 1 xmlstartet
# ^ ^ ^
# | | Command to run
# | Max number of arguments (xmlstartet will be called for
# | each line in input file)
# Input file
while read -r line
do
xmlstarlet "$line"
done <FramesList.txt
我认为大多数XMLStarlet命令都接受多个文件作为参数,并且由于您的输入列表很小,您也可以编写
xml COMMAND $(<FramesList.txt)