Bashを使用して一括でファイルを作成する

Bashを使用して一括でファイルを作成する

私はこの問題を解決しようとし、他のコマンドを試しましたが、まだ何もありません。この質問に答えるのに役立ちますか?

ホーム ディレクトリに Shirts というサブディレクトリを作成します。サブディレクトリにstyle.size.color.ext形式のファイル名を持つ108個のファイルを作成します。各ファイルには、次の表の値の組み合わせが含まれています。

Style   tee, crew, turtleneck
Size    XXL, XL, L, M, S, XS
Color   red, yellow, blue
Extension   info, inv

これが私が使用する最後のコマンドです。

$ touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}

答え1

タッチコマンドに小さなバグがあります。元の注文、

touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}

最後に一つあります。/ディレクトリを再作成しようとしていますが、そのディレクトリが存在しないため、次のエラーメッセージが表示されます。

touch: cannot touch `/shirts/turtleneck.XS.blue/inv': No such file or directory

ただし、ファイルのみが必要なため、元のコマンドを次のように変更する必要があります。

touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}

ポリスチレン:ディレクトリがすでに存在することを確認する必要がありますshirts。そうしないと、同じエラーが再び発生しますcannot touch

答え2

あなたの説明によると、これらの108ファイルの名前は次の形式に従う必要がありますstyle.size.color.ext

だからそうしなければならない

mkdir shirts
touch {tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}

実行中の作業はtouch空のファイルを作成することですが、別のサブディレクトリを持つシャツディレクトリを作成しようとしています。touchそうすることはできません。

touch編集:上記のコマンドを短く、より見やすくすることもできます。

touch {tee,crew,turtleneck}.{{X,XX,}L,M,{X,}S}.{red,yellow,blue}.{info,inv}

関連情報