Linux学习之Shell基础——Bash基本功能——输入输出重定向

1、标准输入输出

设备设备文件名文件描述符类型
键盘/dev/stdin0标准输入
显示器/dev/sdtout1标准输出
显示器/dev/sdterr2标准错误输出

2、输出重定向(将原本该输出到显示器中的内容输出到文件或其他设备中,一般用于日志等)

类型符号作用
标准输出重定向命令 > 文件以覆盖的方式,把命令的正确输出指定到指定的文件或设备当中
命令 >> 文件以追加的方式,把命令的正确输出输出到指定的文件或设备当中
标准错误输出重定向错误命令   2>  文件以覆盖的方式,把命令的错误输出输出到指定的文件或设备当中
错误命令  2>>文件以追加的方式,把命令的错误输出输出到指定的文件或设备当中
正确输出和错误输出同时保存命令 > 文件 2>&1以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 >> 文件 2>&1以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &> 文件以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &>> 文件以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令 >> 文件1 2>> 文件2把正确的输出追加到文件1中,把错误的输出追加到文件2中

如上,是分开操作,但对于实际操作中不实用,如上需要我们先行知道标准输出执行是否出错,所以为了更实用,一般采用如下措施

 

注意:不是所有的命令都有如上输出重定向功能,可以使用的命令为:必须有结果输出的命令

         错误输出保存到文件中,表示系统执行命令错误时,会把执行命令出错的信息保存到文件中

如下,我们把ls命令执行的结果重定向输出到自定义的文件中

[root@localhost ~]# touch cdef
[root@localhost ~]# ls
abc              cde   install.log         sh      模板  图片  下载  桌面
anaconda-ks.cfg  cdef  install.log.syslog  公共的  视频  文档  音乐
[root@localhost ~]# chmod 777 cdef
[root@localhost ~]# ls > cdef
[root@localhost ~]# ls
abc              cde   install.log         sh      模板  图片  下载  桌面
anaconda-ks.cfg  cdef  install.log.syslog  公共的  视频  文档  音乐
[root@localhost ~]# cat cdef
abc
anaconda-ks.cfg
cde
cdef
install.log
install.log.syslog
sh
公共的
模板
视频
图片
文档
下载
音乐
桌面
[root@localhost ~]# vim cdef

3、特殊命令

   ls  &>  /dev/null       :该命令表示无论输出是什么,都输出到垃圾箱中

 4、输入重定向

[root@localhost ~]# wc 【选项】[文件名]

选项:

    -c   :统计字节数

    -w   :统计单词数

    -l     :统计行数

使用:

命令 <  文件名    :把文件作为命令的输入

命令  << 文件名   :把两个相同字符串之间的内容作为命令的输入

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值