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

比如查看安装的软件包

比如查找文件夹

再比如查找文件中的内容

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

相关推荐
漫谈网络10 分钟前
Systemd构建自动化备份服务与外部存储管理
linux·运维·自动化·systemd
千航@abc20 分钟前
grep命令: 过滤
linux·运维·grep·过滤
yyywxk31 分钟前
Linux / Windows 下 Mamba / Vim / Vmamba 安装教程及安装包索引
linux·windows·vim
jay丿1 小时前
Linux动态监控进程利器:top命令详解
linux·运维·服务器
程序员可可1 小时前
JMeter接口自动化发包与示例
运维·自动化测试·软件测试·功能测试·jmeter·程序人生·自动化
JhonKI2 小时前
【Linux】日志模块实现详解
linux·运维·服务器
学也不会3 小时前
Ubuntu-安装redis
linux·运维·ubuntu
共享家95274 小时前
Linux常用命令详解:从基础到进阶
linux·服务器·数据库
小徐Chao努力5 小时前
【centos】经常使用的脚本
linux·运维·centos
慈云数据5 小时前
从开发到上线:基于 Linux 云服务器的前后端分离项目部署实践(Vue + Node.js)
linux·服务器·vue.js