shell tee不使用ssh运行外部脚本

brgchamk  于 2023-04-21  发布在  Shell
关注(0)|答案(2)|浏览(159)

我试图记录在ssh会话期间发生的一切,同时在shell上显示输出。

sshpass -p "password" ssh -tt -o ConnectTimeout=10 -oStrictHostKeyChecking=no username@"$terminal" 'bash -s' < libs/debug-mon.lib "$function" | grep -E '^INFO:|^WARNING:' || echo "WARNING: Terminal not reacheable or wrong IP" | tee -a libs/debug-monitor-logs

我在日志库/debug-monitor-logs文件上没有得到任何东西。您能帮助我看看问题出在哪里吗?
谢谢

a14dhokn

a14dhokn1#

看起来您将写入日志文件的唯一内容是“警告:终端不可达或IP错误”
尝试这样的事情

(command-that-might-fail || echo error message) | tee -a log-file

而不是

commant-that-might-fail || echo error message | tee -a log-file

(put括号中的整个表达式,您希望将其导入tee)

lymnna71

lymnna712#

查看SSHLog:https://github.com/sshlog/agent/
它是一个监控SSH登录和用户活动的守护进程。所有用户活动(shell上发生的一切)都被被动记录下来,并可通过管道传输到日志文件、远程系统日志服务器等。

相关问题