赞
踩
Linux 默认提供了三个特殊设备,用于终端的显示和输出,分别为 stdin(标准输入,对应于你在终端的输入),stdout(标准输出,对应于终端的输出),stderr(标准错误输出,对应于终端的输出)
例如,这一句时将hello,world!字符串输出到终端屏幕,这是标准输出
echo 'hello world'
hello world
例如,这一句时将hello,world!字符串输出到2.TXT文件中,需要查看文件才能在终端显示
echo 'hello,world!' >> 2.txt
[root@kafka root2]# cat 2.txt
hello,world!
之前面没有用到的 < 和 << 操作也是没有问题的,它们的区别在于重定向的方向不一致而已,> 表示是从左到右,< 右到左
管道是一种通信机制,通常用于进程间的通信(也可通过 socket 进行网络通信),表现出来形式就是将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)
例如,下面命令意思就是列出所有可安装的软件包信息输出给grep查找 7zip作为输入
yum list | grep 7zip
p7zip.x86_64 16.02-20.el7 @epel
p7zip-doc.noarch 16.02-20.el7 epel
p7zip-gui.x86_64 16.02-20.el7 epel
p7zip-plugins.x86_64 16.02-20.el7 epel
yum update;yum install p7zip
[root@kafka root2]# which cowsay>/dev/null && echo "cowsay software is installed" || echo "no"
cowsay software is installed
# 正确命令
[root@kafka root2]# which cowsasy>/dev/null && echo "cowsay software is installed" || echo "no"
/usr/bin/which: no cowsasy in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
no
# 错误命令
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。