urxvt / zshのシェル変数に最後のコマンドの出力を保存する方法は?

urxvt / zshのシェル変数に最後のコマンドの出力を保存する方法は?

grepzshで実行された最後のコマンドの出力(stdoutとstderr)をavailable変数などで使用できるようにしたいです。

答え1

コマンドの出力をファイル(または変数)にリダイレクトできますが、これは自動的には発生しません。

出力リダイレクトは、マニュアルページの大きなトピックです。用語を思い出させるために、標準出力とエラーをリダイレクトします。

foo=$(command 2>&1)

検査パス

$ foo=$(oops 2>&1); date; echo "$foo"
Sun Feb 28 20:59:18 EST 2016
sh: 1: oops: not found

追加資料:

答え2

出力をキャプチャしてから出力が1つの画面に収まると、終了するようにポケットベルを設定できます。合わない場合はポケットベルを使ってスクロールして検索できます。

export PAGER=less
export LESS=-FSXRi
# -F and -X are relevant here, but that's what I use
# also, less quickly toggles most by typing '-' and the option

zshがページャを通過するようにコマンドを自動的に変更する方法があるようですが、どうすればよいかわかりません。

この出力をある画面に収まる他のディレクトリと比較します。

find ~ -type f |& less
# |& to capture both stdout and stderr

関連情報