シェルのなかで、複数行のとあるprofileをファイルに吐き出したいときにちょっと躓いたのでメモ
1 2 3 4 5 6 7 |
#!/bin/sh cat > /etc/profile.d/pyenv.sh << 'EOS' export PYENV_ROOT="/usr/local/pyenv" export PATH="${PYENV_ROOT}/bin:${PATH}" eval "$(pyenv init -)" EOS |
これでいける。
通常と何が違うのかというと、
区切り文字の、
EOS
を
シングルクォーテーションでくくってあげています。(ダブルコートでも可)
こうすることでヒアドキュメント内のコマンドや変数が展開されないようになります。
幸せいっぱいですね。
今日の一言
見ての通りpyenvの設定です。笑