从我的脚本输出中,我想捕获所有带有错误消息的日志数据,并将它们全部重定向到日志文件。
我有如下脚本:
#!/bin/bash
(
echo " `date` : part 1 - start "
ssh -f admin@server.com 'bash /www/htdocs/server.com/scripts/part1.sh logout exit'
echo " `date` : sleep 120"
sleep 120
echo " `date` : part 2 - start"
ssh admin@server.com 'bash /www/htdocs/server.com/scripts/part2.sh logout exit'
echo " `date` : part 3 - start"
ssh admin@server.com 'bash /www/htdocs/server.com/scripts/part3.sh logout exit'
echo " `date` : END"
) | tee -a /home/scripts/cron/logs
Run Code Online (Sandbox Code Playgroud)
我想查看文件中的所有操作 /home/scripts/cron/logs
但是我只看到了我在echo命令后放置的内容。
如何检查SSH命令成功的日志?
我需要收集所有日志。我需要它来监视脚本中每个命令的结果,以便更好地分析脚本失败时发生的情况。
当我运行命令时,netstat -tln我看到以下输出:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp6 0 0 :::8000 :::* LISTEN
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::443 :::* LISTEN
Run Code Online (Sandbox Code Playgroud)
我理解除了0.0.0.0:22和之外的所有条目127.0.0.1:3306;为什么会有这些条目?
我使用 iptables 作为我的防火墙工具,想知道我是否需要禁用它以及该条目最初是如何显示的。
我知道那3306是针对 mysql 的。但是为什么 SSH 和 Mysql 有特定的 IP 地址,而其他服务器没有?