当前位置: 首页 > news >正文

三、重定向输入和输出

linux中用0代表标准输入,1代表标准正确输出,2代表标准错误输出。

一、输出重定向

输出重定向操作符大于号(>)和双大于号(>>)创建了一个输出文件(通过默认的umask设置),并将命令的输出重定向到该文件中。

1、覆盖式输出

bash shell使用大于号(>)来将命令的输出保存到指定的输出文件中。如果输出文件已经存在了,该重定向操作符会用新的文件数据覆盖已有文件。

语法:

command > outputfile

例如:

[root@localhost ~]# date > test
[root@localhost ~]# ls
1.sh             initial-setup-ks.cfg  test  模板  图片  下载  桌面
anaconda-ks.cfg  playground            公共  视频  文档  音乐
[root@localhost ~]# ls -l test
-rw-r--r--. 1 root root 43 3月  26 09:46 test

2、追加式输出

bash shell使用双大于号(>>)来将命令的输出保存到指定的输出文件中。如果输出文件已经存在了,该重定向操作符会将数据追加到已有文件的尾部。

[root@localhost ~]# date >> te
[root@localhost ~]# ls
1.sh             initial-setup-ks.cfg  te    模板  图片  下载  桌面
anaconda-ks.cfg  playground            公共  视频  文档  音乐
[root@localhost ~]# cat te
2021年 03月 26日 星期五 09:56:38 CST
[root@localhost ~]# ls >> te                          #追加
[root@localhost ~]# cat te
2021年 03月 26日 星期五 09:56:38 CST
1.sh
te
公共
模板
[root@localhost ~]# echo 12 > te                    #覆盖
[root@localhost ~]# cat te
12

二、输入重定向

输入重定向与输出重定向相反,是将输入文件的内容重定向到命令。(在使用输入重定向之前,输入文件必须已经存在,否则回提示错误)

Bash 支持的输出重定向符号
符号说明
command <file 将 file 文件中的内容作为 command 的输入。
command <<END 从标准输入(键盘)中读取数据,直到遇见分界符 END 才停止(分界符可以是任意的字符串,用户自己定义)。
command <file1 >file2 将 file1 作为 command 的输入,并将 command 的处理结果输出到 file2。

1、 输入重定向

 输入重定向符号是小于号(<),命令把输入文件的内容作为标准输入设备

语法:

command < inputfile

注:在命令行上,命令总是在左侧,而重定向符号“指向”数据流动 的方向。小于号说明数据正在从输入文件流向命令。

2、分界符输入重定向符号

分界符输入重定向符号是远小于号(<<),从标准输入(键盘)中读取数据,直到遇见分界符 END 才停止(分界符可以是任意的字符串,用户自己定义)。

语法:

command <<END

例如:

[root@localhost ~]# ls << q
> w                                     #键盘输入w,e,r,t
> e
> r
> t
> q                                    #键盘输入q分界符,退出键盘输入模式,执行(<<)左侧命令
1.sh             initial-setup-ks.cfg  te  公共  视频  文档  音乐
anaconda-ks.cfg  playground            w1  模板  图片  下载  桌面

3、输入输出重定向同时使用

将 infile 作为 command1 的输入,并将 command1 的处理结果输出到 outfile。

语法:

command1 < infile > outfile

例如:

[root@localhost ~]# cat < w1 > qw
[root@localhost ~]# cat qw
12qw
qwq
wq
[root@localhost ~]# wc < w1 > w
[root@localhost ~]# cat w3  3 12

将输入文件的内容作为命令1的输入,再将命令执行结果输出到指定的输出文件中(即先执行command1 < infile,得出的执行结果输出到outfile 中)

http://www.jsqmd.com/news/43277/

相关文章:

  • 四、管道符
  • 2025年11月geo服务商排行榜:十大优质企业综合实力与长期发展指南
  • 六、退出脚本
  • 24、Linux服务运行级别
  • 23、文件权限管理
  • 22、磁盘分区、挂载
  • 2025年比较好的不锈钢金属波纹管设备厂家实力及用户口碑排行榜
  • 21、磁盘管理命令 df、du、tree
  • 18、crontab 定时任务
  • 用HBuilder查询天气等状态
  • 基于java+springboot的租房网站、房屋出租、房屋租赁管理系统源码+运行步骤
  • 17、cd 切换目录 ,pwd 查询目录路径
  • 16、at 定时任务
  • CIO修炼之道读书笔记- CIO的沟通能力
  • 2025年靠谱的硅橡胶发热电缆厂家选购指南与推荐
  • 差分探头:解锁电网电压波形观测的专业视角​
  • 13、service 服务管理
  • 19、ps 查询进程
  • 十一、while语句
  • 二十二、定时备份数据库案例1
  • 二十、系统日志管理
  • 10、top 命令 动态监控进程
  • 11、firewall 防火墙命令
  • delphi7 indy 字符串转utf8字节流 MD5哈希
  • 在线调试--天气
  • linux .sock 文件
  • 如何测试低概率BUG,例如万分之一的概率问题?
  • 2025年靠谱的发热电缆厂家最新实力排行
  • linux .o 文件
  • 2025年评价高的电伴热带用户口碑最好的厂家榜