目录

shell 日志保存

脚本执行后免不了要记录日志,最常用的方法就是重定向。以下面的脚本为例:

1
2
3
4
#!/bin/bash
#test.sh
lll #这个命令是没有的,因此会报错
date

方式一

将标准输出保存到文件中,打印标准错误:

1
./test.sh > log.dat

这种情况下,如果命令执行出错,错误将会打印到控制台。所以如果你在程序中调用,这样将不会讲错误信息保存在日志中。

方式二

1
./test.sh > log.dat 2>&1

标准输出和标准错误都保存到日志文件中

这里的2>&1是什么意思?
表明将./test.sh的输出重定向到log.txt文件中,同时将标准错误也重定向到log.txt文件中。

方式三

保存日志文件的同时,也输出到控制台

1
./test.sh |tee log.dat