Linux管道命令是什么

2023-02-09

Linux管道命令是“|”,其作用是用来连接多条指令,前一条指令的输出流会作为后一条指令的操作对象,其命令格式为“指令1 | 指令2 | …”,该命令的后一条指令,必须能够接收标准输入流命令才能执行。管道命令只能处理前一条指令的正确输出,不能处理错误输出;管道命令的后一条指令,必须能够接收标准输入流命令才能执行。

本教程操作环境:linux7.3系统、Dell G3电脑。

什么是Linux 管道命令?

1、Linux管道命令是 “ | ”,其作用是用来连接多条指令,前一条指令的输出流会作为后一条指令的操作对象,其命令格式为“指令1 | 指令2 | …”,该命令的后一条指令,必须能够接收标准输入流命令才能执行。

2、管道命令的操作符是:”|”,它只能处理由前面一条指令传出的正确输出信息,对错误信息是没有直接处理能力的。然后,传递给下一条指令,作为操作对象。

基本格式:指令1 | 指令2 | …

【提醒注意】:

1、管道命令只能处理前一条指令的正确输出,不能处理错误输出;

2、管道命令的后一条指令,必须能够接收标准输入流命令才能执行。


Cut— 根据条件 从命令结果中 提取 对应内容

第一步: 截取出指定文件中 前2行 的 第5个字符

命令 含义
cut 动作 文件 从指定文件截取内容
参数 英文 含义
-c characters 按字符选取内容
命令:
head -2 文件名 | cut -c 5

第二步: 截取出指定文件中前2行以”:”进行分割的第1,2段内容

参数
英文
含义
-d '分隔符'
delimiter
指定分隔符
-f n1,n2
fifields
分割以后显示第几段内容, 使用 , 分割
范围控制 含义
n 只显示第 n 项
n- 显示从第 n 项 一直到行尾
n-m 显示从第n 项 到m 项(包括m)

命令:

head -2 文件名 | cut -d ':' -f 1,2

或者

head -2 文件名 | cut -d ':' -f 1-2

第三步: 截取出指定文件中前2行以”:”进行分割的第1,2,3段内容

命令:

head -2 文件名 | cut -d ':' -f 1,2,3

或者

head -2 文件名 | cut -d ':' -f 1-3

sort—可针对文本文件的内容,以行为单位来排序

第一步: 字符串排序

命令: sort 文件名

第二步: 去重排序

  • 它的作用很简单,就是在输出行中去除重复行。
参数 英文 含义
-u unique 去除重复的

命令:sort -u 文件名

第三步: 对数值排序

参数 英文 含义
-n numeric-sort 按照数值大小排序
-r reverse 使次数颠倒
  • 命令

默认按照 字符串 排序 : sort 文件名

升序:sort -n 文件名

降序:sort -n -r 文件名

合并式:sort -nr 文件名 —> 效果和降序一样

第四步: 对成绩排序

参数 英文 含义
-t
fifield-separator
指定字段分隔符
-k key 根据一列排序
#
根据第二段成绩 进行倒序显示 所有内容
sort -t ' ' -k2nr
文件名
注意:
'

'

有一个空格

wc命令— 显示/统计 指定文件 字节数, 单词数, 行数 信息

第一步: 显示指定文件 字节数, 单词数, 行数 信息.

命令 含义
wc 文件名 显示 行数、单词数、字节数、指定文件信息

命令:wc 文件名

第二步: 只显示 文件 的行数

参数 英文 含义
-c bytes 字节数
-w words 单词数
-l lines

行数

命令:

wc -l 文件名 -----> 行数

wc -c 文件名 -----> 字节数

wc -w 文件名 -----> 单词数

第三步: 统计多个文件的 行数 单词数 字节数

命令:wc 文件1 文件2 文件3 文件4

例:wc 1.txt 2.txt 3.txt 4.txt

或者:

命令:wc *.txt

第四步: 查看 /etc 目录下 有多少个 子内容

命令:ls /etc | wc -l

uniq— 用于检查及删除文本文件中重复出现的行【去重

  • 一般与 sort 命令结合使用。

第一步:实现去重效果

命令 英文 含义
uniq [参数] 文件 unique 唯一 去除重复行

命令:cat 文件名 | sort | uniq —》根据字符串排序并去重

第二步:不但去重,还要统计出现的次数

参数 英文 含义
-c count 统计每行内容出现的次数

命令:cat 文件名 | sort | uniq -c

tee — 将命令结果 通过管道 输出 多个文件

命令 含义
命令结果 | tee 文件1 文件2 文件3
通过
tee
可以将命令结果
通过管道
输出到
多个文件
  • 将去重统计的结果 放到 a.txtb.txtc.txt 文件中

命令:cat 去重文件名 | sort | uniq -c | tee a.txt b.txt c.txt

tr —用于 替换 删除 文件中的字符

第一步: 实现 替换效果

命令 英文

含义

命令结果 | tr 被替换的字符 新字符 translate 实现替换的效果
#
将 小写
he
替换成 大写 HE
echo "helloworld" | tr 'he' ''HE
#

helloworld
的转换为大写
echo "helloworld" | tr '[a-z]' 'A-Z'
#

HELLO
转成 小写
echo "HELLO" | tr 'A-Z' 'a-z'

第二步: 实现删除效果

命令 英文 含义
命令结果
| tr -d
被删除的字符
delete
删除指定的字符
# 删除
abc1d4e5f
中的数字
echo 'abc1d4ee5f' | tr -d '[0-9]'

第三步: 单词计数

#
统计每个单词出现的次数
示例数据:
[root@node001 opt]
# cat words.txt
hello,world,hadoop
hive,sqoop,flume,hello
kitty,tom,jerry,world
hadoop
实现步骤:
1
、将分隔符
“,”
替换成 换行符
2
、 排序
3
、去重
4
、计数
# 命令
cat words.txt |tr ',' '\n'|sort |uniq -c
  • 通过 tr [选项] 字符1 字符2 可以 实现 替换 删除 效果

相关推荐:《Linux视频教程》

以上就是Linux管道命令是什么的详细内容,更多请关注北冥有鱼其它相关文章!

本文转载自【PHP中文网】,希望能给您带来帮助,苟日新、日日新、又日新,生命不息,学习不止。

《Linux管道命令是什么.doc》

下载本文的Word格式文档,以方便收藏与打印。