linux bashrc prompt重复执行问题

发布于 2022-09-12 03:33:35 字数 231 浏览 19 评论 0

想要用prompt记录每次用户登陆bash执行的命令,但是默认每次打开新的标签页或ssh每次远程登陆都会打开bash从而触发bashrc,这样就会造成在每次登陆时的重复命令记录,有dalao能解决这个问题吗,prompt命令如下:
PROMPT_COMMAND='echo "$(date +%s)][$(whoami)[$$]$(fc -lnr -1 | sed "s/^s*//")" >> /var/log/test.log

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

贪了杯 2022-09-19 03:33:35

这边应该是已经解决了,设置一个环境变量记录是否是初次打开bash的状态,orz太菜了,shell写的少,这边dalao们如果有什么其他思路也可以交流,开阔一下思路

export FIRST=1
function my_history(){
    if [ "$FIRST" = 0 ];then
        echo "[$(date +%s)][$(whoami)][$(pwd)][$(echo $SSH_CONNECTION)][$(tty)][$]$(fc -lnr -1 | sed "s/^\s*//")" >> /var/log/test.log
    else
        export FIRST=0
    fi

}
export PROMPT_COMMAND=my_history
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文