私は、子プロセス(実行可能にする)からbashターミナルからプログラムで履歴を取得しようとしています。私は基本的に端末が実行した最後のN個のコマンドを探しています。親端末で最後に実行されたコマンドをフェッチすることはできますか?
フロー:
- オープンbashの端子PID = 5
- は
- 実行がPID = 32 PPID = 5
- がコマンドをフェッチ実行行く(GPG、sedは、rpm)でいくつかのコマンドを実行し、親プロセス(bash端末)からのパラメータ(sed、rpm、gpg)を入力して印刷する
bash内蔵history
は、外出/外出時に走るときの大人たち。
~/.bash_history
は、プロンプトが閉じられたときにbash端末からの履歴が書き込まれるため、正確ではありません。
これはまったく可能ですか?
このリンクはhttps://unix.stackexchange.com/questions/147563/how-do-i-repeat-the-last-command-without-using-the-arrow-keysに役立ちます – amrit
セット 'PROMPT_COMMAND = ' export last_command = "!!" ''し、' last_command'環境変数を使用してください。注:これが安全なメカニズムであるかどうかは分かりませんが、w.r.t.シェルインジェクション... – anishsane