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 管道操作使用最频繁的一中情况 查找过滤

比如查看安装的软件包

比如查找文件夹

再比如查找文件中的内容

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

相关推荐
wanhengidc14 小时前
深度了解云手机是什么
运维·服务器·科技·智能手机·云计算
python百炼成钢15 小时前
28.嵌入式 Linux LED 驱动开发实验
linux·运维·驱动开发
JJ1M816 小时前
用 Python 快速搭建一个支持 HTTPS、CORS 和断点续传的文件服务器
服务器·python·https
西风未眠16 小时前
高效编辑之vi/vim常用快捷键汇总
linux·编辑器·vim
_Stellar16 小时前
Linux 服务器管理 根目录文件夹权限设置 基于用户组实现安全共享
linux·服务器·安全
LUCIFER17 小时前
驱动开发:详细分析 DTB、DTS、DTSI、DTBO 的区别、用途及它们之间的关系
linux·服务器·驱动开发
BullSmall18 小时前
Test Matrix:测试矩阵(IT 领域定义 + 设计实践 + 华为场景应用)
运维·服务器
liuyao_xianhui19 小时前
版本控制器git--gdb/cgdb
linux·运维·服务器·git
CS_浮鱼19 小时前
【Linux进阶】mmap实战:文件映射、进程通信与LRU缓存
linux·运维·c++·缓存
chuxinweihui19 小时前
应用层协议 HTTP
linux·服务器·网络·网络协议·http