.bashrc を変更して履歴をシステムログに送信します。引用の問題

.bashrc を変更して履歴をシステムログに送信します。引用の問題

ログインしたSSHユーザーのIPを含むsyslogのbashコマンドロギングを有効にしてみてください。最終的な目標はスクリプトを作成することです。echo 'export PROMPT_COMMAND=....'' >> ~/.bashrc

.bashrcを手動で編集すると、次のように動作します。

export PROMPT_COMMAND='trap "" 1 2 15; history -a >(tee -a ~/.bash_history | while read line; do if [[ $line =~ ^#[0-9]*$ ]]; then continue; fi; logger -p local3.debug -t "bash[$$]" "($USER $SSH_CONNECTION) $line"; done); trap 1 2 15;'

追加するとawk '{print $1}'問題が発生します。引用符のため疑います。

これはうまくいきません:

export PROMPT_COMMAND='trap "" 1 2 15; history -a >(tee -a ~/.bash_history | while read line; do if [[ $line =~ ^#[0-9]*$ ]]; then continue; fi; logger -p local3.debug -t "bash[$$]" "($USER) $(echo $SSH_CONNECTION | awk '{print $1}') $line"; done); trap 1 2 15;'

周りに引用文を入れようとすると、echo 'export PROMPT_COMMAND=....'' >> ~/.bashrc私にも頭痛が生じます。

これら2つの問題に対する提案はありますか?

ベストアンサー1

おすすめ記事