📅  最后修改于: 2023-12-03 15:09:39.388000             🧑  作者: Mango
在Shell脚本编程中,将输出和错误重定向到Unix中的日志文件是非常有用的技巧。可以将输出和错误信息记录到文件中,以备之后查看和分析。
要将输出重定向到日志文件中,可以使用大于号字符(>)以及目标日志文件名。例如,下面的命令将输出信息写入到mylog.log文件中:
$ ls > mylog.log
这将列出当前目录中的文件,并将结果写入到mylog.log文件中,如果该文件不存在,则会创建一个新的文件。如果mylog.log文件已经存在,则只是覆盖它。
如果要将输出信息添加到一个已有的日志文件中,可以使用双大于号字符(>>),例如:
$ ls >> mylog.log
这会将输出信息追加到mylog.log文件中。
要将错误信息重定向到日志文件中,可以使用2大于号字符(2>)以及目标日志文件名。例如:
$ command_not_exist 2> error.log
这会将执行command_not_exist命令的错误信息写入到error.log文件中。如果该文件不存在,则会创建一个新的文件。如果error.log文件已经存在,则只是覆盖它。
如果要将错误信息追加到一个已有的日志文件中,可以使用2双大于号字符(2>>),例如:
$ command_not_exist 2>> error.log
这会将执行command_not_exist命令的错误信息追加到error.log文件中。
如果要将标准输出和错误信息同时重定向到日志文件中,可以使用&符号,例如:
$ mycommand > mylog.log 2>&1
这会将mycommand命令的标准输出和错误信息都写入到mylog.log日志文件中。如果该文件不存在,则会创建一个新的文件。如果mylog.log文件已经存在,则只是覆盖它。
如果要将标准输出和错误信息追加到一个已有的日志文件中,可以使用&符号和双大于号字符,例如:
$ mycommand >> mylog.log 2>&1
这会将mycommand命令的标准输出和错误信息都追加到mylog.log日志文件中。
以上就是在Shell脚本编程中将输出和错误重定向到Unix中的日志文件的基本方法。它们可以帮助程序员更轻松地进行日志管理和故障排除。