如何使用find exec输入两个变量参数?

时间:2018-04-12 14:21:46

标签: 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完成吗?如果没有,还有其他更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

find -name '*.xslx' -exec sh -c 'xlsx2csv-2.7 -i --skipemptycolumns {} `echo {} | sed 's/\.xlsx/\.csv/'`' \;