记录学习过程用到的命令
文章目录
1. shell 1>&2 2>&1
参考文章:https://www.cnblogs.com/liuchaogege/p/6124669.html
nohup python3 -u py_code.py >> output.log 2>&1 &
在 shell 程式中,最常使用的 FD (file descriptor) 大概有三个, 分别是:
0 是一个文件描述符,表示标准输入(stdin)
1 是一个文件描述符,表示标准输出(stdout)
2 是一个文件描述符,表示标准错误(stderr)
& 是一个描述符,如果1或2前不加&,会被当成一个普通文件。
1>&2 意思是把标准输出重定向到标准错误.
2>&1 意思是把标准错误输出重定向到标准输出。
&>filename 意思是把标准输出和标准错误输出都重定向到文件filename中
我的理解:
1>filename_output.txt
2>filename_error.txt
把标准输出 重定向(写入)到文件filename_output.txt,
把标准错误日志写入到filename_error.txt里。
其中 "1>output.txt"可以省略为“>output.txt”
& 是一个描述符,如果1或2前不加&,会被当成一个普通文件。
1>&2, 把标准输出 重定向到(写入)通道2中,通道2即标准错误写入的文件中。
2>&1, 把标准错误 写入到通道1(标准输出重定向的文件中)
&>filename 意思是把标准输出和标准错误输出都重定向到文件filename中
nohup python3 -u py_code.py >> output.log 2>&1 &
- python3 -u py_code.py : 运行py_code.py,
- >>output.log : 标准输出写入 output.log文件里(省略了1>>output.log)
- 2>&1 : 标准错误也写入到通道1(即标准输入写入的文件log里)
还需要了解的命令:
- nohup
- 命令行最后的“&”