2012-07-11 23 views
8

直前のコマンドの出力をstdoutに書き出した出力を素早く(キーボードショートカットなどで)参照できますか?bashですぐに標準出力(前のコマンドの出力)を参照できますか?

which rails 

、それはその後、/usr/local/bin/railsを返され、私はTextMateでそのファイルを開くために望んでいた、私はこのような出力を再入力できます:私はこれをしなかった場合例えば

mate /usr/local/bin/rails 

しかし、すぐに再入力することなく出力を参照する方法はありますか?

注:私はちょうどmate $(which rails)を行うことができますが、私は特にstdoutを参照しています。

+2

いいえ、それはバッシュに関する限りです。これは端末のスクロールバックバッファー(例えば 'screen')で利用可能です。 –

+0

'mate $(!!)'おそらく。 – ephemient

+0

!!出力ではなく入力のみがあり、出力は端末バッファ以外のどこにも格納されません。 – pizza

答えて

-1

あなたは、常にバッククォートでコマンドを実行できます。

mate `which rails` 

私は危険で、ええと、それは少し感じているものの言わなければなりません。 PATHが改ざんされて本当に必要なものとは違うバージョンのレールが返ってくるようなら、どうしたらいいでしょうか?何が返っても何も返されない場合だから、すべてのエラーケースをクローズするか、何らかの形でそれらを避けるように注意してください(例えば、設定ファイルからレールへのパスを読み、設定ファイルを作成するツールを書くなど)。

私は履歴を参照してバッククォートを使用
4

$ which rails 
/usr/local/bin/rails 
$ mate `!!` 

は、実は、私のエディタ(gvimをを開始するスクリプトが)eにエイリアスされ、それがさらに短くなります。

$ e `!!` 

、あなたが常にできますホットキーにバインドします(bindコマンドのbash manページとreadline supportを参照)。あなたはカットバッファを(Xアプリケーションでマウスで選択)を使用することができるかどう

また、以下のようなもののためのホットキーが便利かもしれません:

$ e $(xclip -out) 

コマンドが持つ上記のように、エディタを起動しますコマンドライン上のカットバッファにあったものは何でも。ダブルクリックで多くのパスを選択できるので、選択したパスを非常に素早く編集できます。

関連する問題