ping 8.8.8.8 | while read pong; do echo "$(date +%F_%T) - - $pong"; done >> file.txt
当互联网掉线时,它仅在终端(termux android)中而不是在文本文件中显示“无法访问的目的地”。我也希望文本文件中的错误消息。
您可以使用&>
将 stdout 和 stderr 重定向到输出文件。
例如:
$ ping <IPaddr> | while read pong; do echo "$(date +%F_%T) - - $pong"; done >> file.txt 2>&1
[root@localhost tmp]# ping 192.168.56.149 | while read pong; do echo "$(date +%F_%T) - - $pong"; done > file.txt 2>&1
^C
[root@localhost tmp]# cat file.txt
2018-09-18_18:03:28 - - PING 192.168.56.149 (192.168.56.149) 56(84) bytes of data.
2018-09-18_18:03:28 - - From 192.168.56.102 icmp_seq=1 Destination Host Unreachable
2018-09-18_18:03:28 - - From 192.168.56.102 icmp_seq=2 Destination Host Unreachable
2018-09-18_18:03:28 - - From 192.168.56.102 icmp_seq=3 Destination Host Unreachable
[root@localhost tmp]#