- 免交互处理
在免交互输出处理中可以使用重定向将输出内容输入到黑洞文件/dev/null中。
使用重定向输入将/root/testmail中的内容以Test mail为右键名发送给root@localhost:[root@localhost ~]# echo password | passwd --stdin user &> /dev/null
&> 作用等同于>/dev/null 2>&1(正常输出放进黑洞文件,2>&1表示将错误输出合并到标准输出中,即把标准输出和错误输出都混合重定向到黑洞文件中)[root@localhost ~]# mail -s 'Test mail' root@localhost < /root/testmail
- I/O交互 标准输入:从此设备接收用户输入数据 标准输出:通过此设备向用户报告正常的命令输出结果 标准错误输出:通过此设备向用户报告命令执行过程中出现的报错信息
- 顺序分隔
使用分号依次执行,只有先后顺序,没有逻辑关系。
逻辑“与”分隔 命令1&&命令2&&命令3&&命令4,逻辑关系为且(and),期望所有命令执行成功,一旦某个命令执行失败,不执行后续命令,如下: ``` [root@localhost ~]# ls -l && cat 1 && cat anaconda-ks.cfg | wc -l total 4[root@localhost ~]# mkdir /xxx ; cd /xxx
-rw-------. 1 root root 1805 May 10 17:59 anaconda-ks.cfg cat: 1: No such file or directory
------------------------------------
逻辑“或”分隔
命令1||命令2||命令3||命令4,逻辑关系为或(or),任何一条命令执行成功都符合期望,且只在前面命令执行失败时执行后续命令。
[root@localhost ~]# cd aaa || mkdir aaa || ls -l aaa -bash: cd: aaa: No such file or directory
组合逻辑分隔
(1)与命令前的命令执行失败,与命令后的命令忽略,执行或命令后的命令。
[root@localhost ~]# ls anaconda-ks.cfg [root@localhost ~]# cd aaa && mkdir aaa || pwd -bash: cd: aaa: No such file or directory /root [root@localhost ~]# ls anaconda-ks.cfg
(2)与命令前的命令执行成功,执行与命令后的命令,忽略或命令后的命令。
[root@localhost ~]# ls aaa anaconda-ks.cfg [root@localhost ~]# cd aaa && mkdir a || ls [root@localhost aaa]# ls a
(3)或命令前的命令执行失败,执行或命令后的命令和与命令后的命令。
[root@localhost ~]# ls anaconda-ks.cfg [root@localhost ~]# cd aaa || mkdir aaa && ls -bash: cd: aaa: No such file or directory aaa anaconda-ks.cfg
(4)或命令前的命令执行成功,忽略或命令后的命令,执行与命令后的命令。
[root@localhost ~]# ls anaconda-ks.cfg [root@localhost ~]# mkdir aaa || cd aaa && pwd /root [root@localhost ~]# ls aaa anaconda-ks.cfg
------------------------------------