修改 .bashrc 以将历史记录发送到系统日志,引号问题

修改 .bashrc 以将历史记录发送到系统日志,引号问题

尝试启用将 bash 命令记录到 syslog,包括登录的 ssh 用户的 IP。最终目标是有一个脚本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也让我头疼。

对这两个问题有什么建议吗?

相关内容