Bash
使用不同文件名重複命令
這是某人的上籃…
我不得不重複執行一個命令:
$ wp input csv MyCSV01.csv directory_name $ wp input csv MyCSV02.csv directory_name $ wp input csv MyCSV03.csv directory_name
唯一的變化是文件名是遞增的。我怎樣才能將所有這些背靠背執行?
也許找到所有以開頭的文件
MyCSV*
然後按順序執行它們?和/或指定要執行的文件MyCSV03.csv
範圍MyCSV05.csv
?理想情況下,該解決方案對於命令行來說足夠短,但它可以是一個腳本。
for i in {01..20}; do #replace with your own range echo \ wp input csv "MyCSV$i.csv" directory_name done
如果 echo 行提供了您想要的結果,請註釋掉它。
zsh
,你用它來標記你的問題,它的形式更短:for i (MyCSV{01..20}.csv) wp input csv $i directory_name
或者你可以使用它的
zargs
功能:autoload zargs # best in ~/.zshrc zargs -i MyCSV{01..20} -- wp input csv {} directory_name
for csv in MyCSV[01][0-9].csv do wp input "$csv" directory_name done