Mac で Terminal のタブの history を共有させる。
基本的には、これを見れば行けます。ありがとうございます(`・ω・´)ゞ
iandeth. - bashにて複数端末間でコマンド履歴(history)を共有する方法
Step1. ~/.bash_profile, ~/.bash_login, ~/.profile のうち、どれがあるか確認
書き込み先を間違えると.bash_profileがあるとMacPortsでインストールしたパッケージが見えなくなると言った症状が発生します。
自分も書き込み先を誤って Mac Ports でインストールした Python 3.3 がいきなり 2.7 に戻ったり、Port コマンドが使えなくなったりで焦りました。
~/.bash_profile | ユーザー固有の環境変数と起動プログラムを記述します。 |
~/.bash_login | ~/.bash_profileが存在しないとき、 代わりに呼び出されます。 |
~/.profile | ~/.bash_profile,~/.bash_loginともに存在しないとき、 代わりに呼び出されます。 |
Step2. source .bashrc を追記
~/.profile があれば ~/.profile に、無ければ ~/.bash_login に、無ければ ~/.bash_profile に書き込みます。
書き込んであげないと~/.bashrc が反映されないといった症状が発生します。
$ vi ~/.bash_profile source ~/.bashrc
Step3. コマンドを実行する度に読み込まれる ~/.bashrc に次の内容を追記します。
以下の内容は、参考にしているサイトからの引用になります。bashにて複数端末間でコマンド履歴(history)を共有する方法
function share_history { # 以下の内容を関数として定義 history -a # .bash_historyに前回コマンドを1行追記 history -c # 端末ローカルの履歴を一旦消去 history -r # .bash_historyから履歴を読み込み直す } PROMPT_COMMAND='share_history' # 上記関数をプロンプト毎に自動実施 shopt -u histappend # .bash_history追記モードは不要なのでOFFに export HISTSIZE=9999 # 履歴のMAX保存数を指定 HISTFILE=~/.bash_history # session を restore した時に history が効かなくなります。これをしないと。
その他、参考サイト
Mac の Terminal の設定を保存する方法がありましたら、ご教示い… - 人力検索はてな
何気なく使ってるhistoryコマンドについてちょっと調べてみた。Macの。 - kanonjiの日記
コマンド履歴の達人を目指してみる - ザリガニが見ていた...。