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

比如查看安装的软件包

比如查找文件夹

再比如查找文件中的内容

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

相关推荐
yzx99101319 分钟前
服务器生成图片
运维·服务器
db_murphy1 小时前
Oracle数据块8KB、OS默认认块管理4KB,是否需调整大小为一致?
linux
liulilittle2 小时前
C++ TAP(基于任务的异步编程模式)
服务器·开发语言·网络·c++·分布式·任务·tap
小阳睡不醒4 小时前
小白成长之路-部署Zabbix7(二)
android·运维
mCell4 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记4 小时前
GPU运维常见问题处理
linux·运维·gpu
caolib5 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
奇舞精选5 小时前
k8s基本概念初探
运维
誰能久伴不乏5 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔6 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器