1つのファイルをテンプレートとして連番のファイルを作るなんてことをよくやるんですが、 少なければ手動でコピーしてファイルをリネームで対応してしまうものの、ファイル数が10を超えるとさすがにしんどいですよね。
でも、なんとかfor文とdo文を使うだけのシェルスクリプトを書くことで対応できました。
このスクリプトではchapter1.mdをテンプレートとして、2以降連番でファイルを作るものです。展開するファイルの数はfor〜inの後、格好が悪いですが数字を並べていく方法とseqを使って表記する方法があります(chapterは変数)。
for chapter in 2 3 4 5 6 7 8 9 10 11 12 (数字を並べる方法) for chapter in `seq 2 12` (seqを使う方法)
最終的に次のようなスクリプトができました。
#!/bin/bash for chapter in `seq 2 12` do cp chapter1.md chapter$chapter.md done
これを実行することで、chapter1.mdからchapter12.mdのファイルが作れました。
めでたしめでたし。