真新しいサーバー (CentOs 6) で Perlbrew を使用しています。
以前のシステム (RedHat 4) では、Perlbrew を使用せずに、bash シェルでいくつかのエイリアスを使用していましたalias nreload='/usr/local/nginx/sbin/nginx -s reload'
。たとえば、.bash_profile ファイルに行を追加するだけで Nginx を再起動していました。
さて、Perlbrew を使って、.bash_profile と .bashrc で試してみましたが、うまくいきませんでした。その場でエイリアスを作成できますが、それらを永続的に使用できるようにすることはできません。
Perlbrew インストールのヒントに従いsource ~/perl5/perlbrew/etc/bashrc
、.bashrc ファイルの行をコピーしました。サーバーにログインするだけで Perlbrew Perl がアクティブになるはずだと思ったのですが、そうではありません。source ~/perl5/perlbrew/etc/bashrc;
そのため、Perlbrew Perl を使用する必要があるたびに書く必要があります。それは正しい方法ではないようです。
おそらく本当の問題は、Perlbrew の実行方法です。Perlbrew が別のシェルを開くという概念を理解していないのかもしれません。別のシェル、サブシェルがある場合、どのようにエイリアスを使用できますか?
これが私の .bash_profile の内容です:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
source ~/perl5/perlbrew/etc/bashrc
export PATH
alias nreload='/usr/local/nginx/sbin/nginx -s reload'
ところで: サーバーはリモート サーバーであり、ターミナルを使用してローカルの Macintosh から制御します。ターミナルは実際の Unix ターミナルよりも視覚的なツールであると読んだことがありますが、完全には理解していません。