Ruby 開発サーバーを起動し、ウィンドウのタイトルを設定するシェル スクリプト ファイルがあります。何らかの理由で OS X では動作しませんが、Ubuntu では動作しました。
これが私のスクリプトです:
[10:24:48] [user@mac site_web]$ tail ./sdev.sh
#!/bin/bash
title "dev server port 3000"
RAILS_ENV=development rails s -p 3000 --debugger
コマンドラインからは正常に実行されますが、スクリプト内からは失敗します。
[10:18:17] [user@mac site_web]$ title "dev server"
title changed
[10:18:29] [user@mac site_web]$ ./sdev.sh
./sdev.sh: line 2: title: command not found
最後の行が問題です。
そして私のタイトル関数(私の ~/.bash_profile 内):
# function for setting terminal titles in OSX
function title {
printf "\033]0;%s\007" "$1"
echo "title changed"
}
OSX 上なので、これを別の方法で行う必要がありますか?
編集: /Users/[me]/.bashrc にタイトル機能を追加してみましたが、まだエラーが発生します。
答え1
これを試すための Mac はありませんが、次のようにスクリプトに関数ソースへの参照を含めたらどうなるでしょうか。
#!/bin/bash
. $HOME/.bash_profile
title "dev server port 3000"
RAILS_ENV=development rails s -p 3000 --debugger