Hack 43. PS1 変数内でシェルスクリプトを使用する
PS1 変数内でシェルスクリプトを実行することもできます。
以下の例では、~/bin/totalfilesize.sh は現在ディレクトリのトータルのファイルサイズを計算しますが、
PS1 変数内で実行されます。
ramesh@dev-db ~> cat ~/bin/totalfilesize.sh for filesize in $(ls -l . | grep "^-" | awk '{print $5}') do let totalsize=$totalsize+$filesize done echo -n "$totalsize" ramesh@dev-db ~> export PATH=$PATH:~/bin ramesh@dev-db ~> export PS1="\u@\h [\$(totalfilesize.sh) bytes]> " ramesh@dev-db [534 bytes]> cd /etc/mail ramesh@dev-db [167997 bytes]> [Note: これは totalfilesize.sh を実行して、PS1 プロンプトに現在ディレクトリの総ファイルサイズを表示します]