これに似ています:シェルスクリプトで実行された最後のコマンドを返します。。
lastCommand=$(some command here)
同じ結果が得られますが、bashスクリプトの代わりにbash関数で使用できますか?
ポリスチレン
lastCommand
前のコマンドを示します。~へ機能。
Bash 4.2+ソリューションで十分です。
答え1
xtrace
ieを使用して、set -x
シェルで実行されたすべてのコマンドの履歴を取得できます。
設定:
xtracefile=$(mktemp)
exec 9>"$xtracefile"
BASH_XTRACEFD=9
set -x
それから何でも実行してください。
foo() { echo foo; echo bar; }
foo
次の行を$xtracefile
含める必要があります。
+ echo foo
+ echo bar
これを使用して必要なものを選択できます。これにより、いつでもファイルが消去またはクリーンアップされず、ファイルが無限に大きくなります。
これらのシンボルを削除するには、+
を指定しますPS4=""
。