シェルスクリプトからシェルスクリプトを生成する

シェルスクリプトのヒアドキュメントを使うと、コマンドによるファイル生成を手軽に実行できます。

    Loading...

## 参考

【永久保存版】シェルスクリプト完全攻略ガイド - Qiita
この記事はNuco Advent Calendar 202310日目の記事です。目次シェルスクリプトの世界へようこそ!1. シェルスクリプトの作成と実行を体験しよう2. シェルスクリプトで変…
【永久保存版】シェルスクリプト完全攻略ガイド - Qiita favicon qiita.com
【永久保存版】シェルスクリプト完全攻略ガイド - Qiita

##

greeting.sh
#!/bin/sh

SCRIPT="$1.sh"

cat <<EOL >$SCRIPT
#!/bin/sh
echo "Hello, $1."
EOL

greeting.sh は引数をファイル名とし、Hello, <引数>. とした出力をもつシェルスクリプトを吐き出します。

実行例
# output world.sh
$ . ./greeting.sh world

$ . ./world.sh
# > Hello, world.

他にも、ChatGPT に訊くと簡単な例をサクッと提示してくれます。ヒアドキュメント内でコマンド置換もうまく使えるようなので、コマンドの内容を引数でカスタマイズするよりダイナミックに扱いたい場合に便利な手法だと思います。

記事がありません