ファイルコピーシェルスクリプト

ファイルをコピーする際に作成したときのメモ。
ベースとなる[standard.txt]を[copy.lst]に記載されているファイル名分だけコピーし、
ファイル内に記載されている[standard]文字を各リストの名称へ変更する。

ベースファイル[standard.txt]

aiueo
standard
kakikukeko

コピー先ファイル名一覧[copy.lst]

minutes
hours
daily

シェルスクリプト[filecopy.sh]
*ファイルの上書き確認などを行っていないので注意*

#!/bin/sh
LIST=./copy.lst
STANDARD="standard.txt"

while read line
do
# ファイルをコピー
cp $STANDARD $line.txt
# ファイル内の[standard]文字列を[copy.lst]記載の文字列に置き換え
echo -e "%s/standard/$line/g\\nw" | ed - $line.txt
done < ${LIST}

[standard.txt][copy.lst][filecopy.sh]を同じ階層に配置して、シェルスクリプトを実行。
[minutes.txt][hours.txt][daily.txt]が作成される。

ちなみに[minutes.txt]は

aiueo
minutes
kakikukeko

となる。