linux进阶篇:重定向和管道操作

Linux中的重定向和管道操作

llinux中的三种IO设备:

标准输入(STDIN),文件描述符号为:0,默认从键盘获取输入

标准输出(STDOUT),文件描述符号位:1,默认输出到显示终端

标准错误(STDERR),文件描述符号为:2,默认输出到显示终端

IO重定向是为了改变默认输入、输出的位置:

1 输出重定向(标准输出STDOUT和标准错误输出STDERR)

【>】标准输出覆盖重定向

【>>】标准输出追加重定向

【2>】标准错误输出重定向

【2>>】标准错误输出追加重定向

【&>】将标准输出和标准错误输出都同时重定向(相当于二次重定向【2>&1】)

【&>>】将标准输出和标准错误输出都同时追加重定向

【set -C】命令:启用系统禁止覆盖重定向(set -C执行后,再做重定向时,重定向文件如果存在则会报错 cannot overwrite existing file)如果在启用【set -C】命令后依然需要覆盖重定向文件,可以使用【>|】来强制覆盖

【set +C】命令:解除禁止覆盖重定向(set +C执行后,重定向文件如果存在则不会报错,直接覆盖)

2 输入重定向(标准输入)

【<】输入重定向;

【<<END】多行输入;(END为多行输入的结束标志)通常用于脚本创建新文件时写入固定内容

3 管道

【|】把前一个命令的执行结果当做后一个命令的输入

4 输出重定向例子

4.1 把/etc/fstab文件内容重定向到/home目录下的test文件中


4.2 把test1文件的内容追加到test文件

先创建test1文件,并再文件中写入任意内容

4.3 覆盖重定向

将test文件的内容进行覆盖

5 输入重定向例子

5.1 输入重定向方式,把小写字母转换成大写字母


5.2 多行输入


6管道例子

6.1 将input.txt 文件内容转换成大写输出

echo "THIS is Test" | tr a-z A-Z将echo输出的内容传递给tr命令,作为tr命令的输入,将输入的内容小写转换为大写

6.2 一页一页查看输入

后面还有很多内容,篇幅过长,只截取一部分内容

6.3 管道操作使用最频繁的一中情况 查找过滤

比如查看安装的软件包

比如查找文件夹

再比如查找文件中的内容

有不对的地方希望不吝赐教,欢迎在评论区留言,分享你的看法。

相关推荐
小糖学代码14 小时前
LLM系列:1.python入门:3.布尔型对象
linux·开发语言·python
shizhan_cloud15 小时前
Shell 函数的知识与实践
linux·运维
Deng87234734815 小时前
代码语法检查工具
linux·服务器·windows
云计算老刘16 小时前
3.Shell 变量基础知识
chrome·正则表达式·centos·云计算
霍夫曼17 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
siriuuus17 小时前
Redis 安装、多实例部署、主从复制及 Cluster 实践
数据库·redis·centos
2301_8107463117 小时前
CKA冲刺40天笔记 - day20-day21 SSL/TLS详解
运维·笔记·网络协议·kubernetes·ssl
❀͜͡傀儡师17 小时前
docker 部署 komari-monitor监控
运维·docker·容器·komari
物联网软硬件开发-轨物科技17 小时前
【轨物方案】软硬件一体赋能,开启矿山机械远程智慧运维新篇章
运维
月熊17 小时前
在root无法通过登录界面进去时,通过原本的普通用户qiujian如何把它修改为自己指定的用户名
linux·运维·服务器