这篇文章主要讲解了“Linux管道命令有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux管道命令有什么作用”吧!
Linux管道命令是“|”,其作用是用来连接多条指令,前一条指令的输出流会作为后一条指令的操作对象,其命令格式为“指令1 | 指令2 | …”,该命令的后一条指令,必须能够接收标准输入流命令才能执行。管道命令只能处理前一条指令的正确输出,不能处理错误输出;管道命令的后一条指令,必须能够接收标准输入流命令才能执行。
什么是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.txt、b.txt、c.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管道命令有什么作用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!