如何使用 find exec 输入两个可变参数?
How can I input two variable parameters using find exec?
我正在尝试像这样使用 find exec
find . -name '*xlsx' -exec xlsx2csv-2.7 -i --skipemptycolumns
问题是xlsx2csv最后需要两个参数,输入文件名和输出文件名。
我有一堆文件 1.xlsx、2.xlsx 等,我想将其转换为 CSV 并命名为 1.csv、2.csv...
基本上我需要运行以下命令
xlsx2csv-2.7 -i --skipemptycolumns 1.xlsx 1.csv
xlsx2csv-2.7 -i --skipemptycolumns 2.xlsx 2.csv
这可以使用 find exec 完成吗?如果没有,还有其他更好的解决方案吗?
你可以这样做:
find -name '*.xslx' -exec sh -c 'xlsx2csv-2.7 -i --skipemptycolumns {} `echo {} | sed 's/\.xlsx/\.csv/'`' \;
我正在尝试像这样使用 find exec
find . -name '*xlsx' -exec xlsx2csv-2.7 -i --skipemptycolumns
问题是xlsx2csv最后需要两个参数,输入文件名和输出文件名。
我有一堆文件 1.xlsx、2.xlsx 等,我想将其转换为 CSV 并命名为 1.csv、2.csv...
基本上我需要运行以下命令
xlsx2csv-2.7 -i --skipemptycolumns 1.xlsx 1.csv
xlsx2csv-2.7 -i --skipemptycolumns 2.xlsx 2.csv
这可以使用 find exec 完成吗?如果没有,还有其他更好的解决方案吗?
你可以这样做:
find -name '*.xslx' -exec sh -c 'xlsx2csv-2.7 -i --skipemptycolumns {} `echo {} | sed 's/\.xlsx/\.csv/'`' \;