2011-12-21 10 views
1

コマンドラインでcontrol-rを頻繁に使用して以前のコマンドを検索していますが、これをbashスクリプトで実行したばかりのコマンドでは動作させることはできません。bashスクリプト内からシェルコマンドの履歴を更新する

私はスクリプトを直接実行してみましたが、 'source'を使用しましたが、履歴にはレコードが表示されません。

スクリプトを使用して履歴を更新する方法はありますか?

答えて

1

history -s commandを使用して、履歴リストにコマンドを保存することができます。

例:

$ history -s echo foo 

[Ctrl+R] 
(reverse-i-search)`foo': echo foo 

代わりに、ファイルへのあなたのコマンドを記述し、現在の履歴リストにファイルからコマンドを読み取るためにhistory -n fileを使用しています。

例:

$ echo "echo bar" > /tmp/file 
$ history -n /tmp/file 

[Ctrl+R] 
(reverse-i-search)`bar': echo bar 
+0

後者のユースケースは、私が後だが、残念ながら私のために動作しないものです。私はMacで...うーん.. – zaf

関連する問題