ファイル名を含むファイルを使用してbashを使用して複数のファイルを作成する

ファイル名を含むファイルを使用してbashを使用して複数のファイルを作成する

ファイル名を含むファイルを使用して、単一のディレクトリに別のファイルを作成しようとしています。たとえば、ファイルに次のものが含まれている場合

file1,file2

ディレクトリに file1.md と file2.md という 2 つのファイルが作成されます。

このコマンドを使用していますが、touch {$(cat file)}.mdfile1,file2.md ファイルが生成されます。

ベストアンサー1

trカンマを改行文字に置き換え、結果を配列として読み取ることができます。

mapfile -t fnames < <(tr ',' '\n' < file)
touch "${fnames[@]/%/.md}"

パラメータ拡張は、${fnames[@]/%/.md}各配列要素の%末尾()を接尾辞に置き換えます.md

おすすめ記事