別のファイル名でコマンドを繰り返す

別のファイル名でコマンドを繰り返す

誰かのレイアップです...

次のコマンドを繰り返し実行する必要があります。

$ 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

理想的には、このソリューションはコマンドラインで使用できるほど短いですが、スクリプトでもかまいません。

ベストアンサー1

for i in {01..20}; do  #replace with your own range
   echo \
   wp input csv "MyCSV$i.csv" directory_name
done

エコラインが目的の結果を提供する場合は、コメントアウトしてください。

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

おすすめ記事