共计 1240 个字符,预计需要花费 4 分钟才能阅读完成。
1 三种规范输入输出
- 规范输出(STDIN),文件形容符号为:0,默认从键盘获取输出;
- 规范输入(STDOUT),文件形容符号为:1,默认输入到显示终端;
- 规范谬误输入(STDERR), 文件形容符号为:2,默认输入到显示终端;
2 什么是重定向?如何重定向?
(1)什么是重定向?
IO 重定向是为了扭转默认输出、输入的地位,如默认状况下规范输入(STDOUT),规范谬误输入(STDERR)都是输入到显示终端,如对规范输入、规范谬误输入扭转其默认输入地位,可重定向输入到指定的文件中(理论工作中常常这么应用),要重定向就要配合一些语法符号。
(2)如何重定向?
- Linux Shell 应用 ” > ” 和 “>>” 进行对文件描述符进行重定向
- “>” # 应用本次输入内容替换原有文件的内容;
- “>>” 把本次输入追加到原文件的前面;
- 常见的一些输入重定向(规范输入和规范谬误输入)示意
- 【>】规范输入笼罩重定向
- 【>>】规范输入追加重定向
- 【2>】规范谬误输入笼罩重定向
- 【2>>】规范谬误输入追加重定向
- 【&>】将规范输入和规范谬误输入都同时笼罩重定向
- 【&>>】将规范输入和规范谬误输入都同时追加重定向
3 管道符以及和它容易混同的一些符号应用
(1)管道符 |
- 格局 : 命令 1 | 命令 2 …
- 解释: 命令 1 的输入作为命令 2 的操作对象
(2)& 和 &&、| 和 || 区别、分号 (;) 用法
- & 示意工作在后盾执行;
- && 逻辑与,只有前一条命令执行胜利时,才执行后一条命令,如 echo ‘1’ && echo ‘2’;
- | 示意管道,上一条命令的输入,作为下一条命令操作对象;
- || 逻辑或,只有上一条命令执行失败后,才执行下一条命令;
- “;” 用法形式:command1 ; command2,用 ; 号隔开每个命令,每个命令依照从左到右的程序执行,彼此之间不关怀是否失败,所有命令都会执行。
4 nohup 后盾启动过程命令和案例
- nohup 让某个过程在后盾运行。
- nohup 英文全称 no hang up(不挂起),用于在零碎后盾不挂断地运行命令,退出终端不会影响程序的运行。
- nohup 命令,在默认状况下(非重定向时),会输入一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输入重定向到 $HOME/nohup.out 文件中。
# 当前台过程执行启动 grafana 命令,& 放在命令到结尾,示意后盾运行
nohup ./bin/grafana-server start > grafana.log 2>&1 &
# 2>&1 解释:将规范谬误输入 (2 示意) 重定向到规范输入(&1 示意),规范输入(&1) 再被重定向输出到 grafana.log 文件中。
5 小结
- 总结了 Linux 中规范输出 (0 示意),规范输入(1 示意),规范谬误输入(2 示意) 以及它们的重定向用法;
- 接着简述了管道符 | 用法,以及 & 和 &&、| 和 || 区别、分号 (;) 用法;
- 最初联合 nohup 后盾启动过程命令在理论工作中和上述提到的命令的综合应用。
「不甩锅的码农」原创,转载请注明起源,未经受权禁止商业用途!同名 GZH 请关注!
正文完