linux基础学习 006 管道命令 (pipe)

管道命令 (pipe)

  • 管道命令pipe,使用的是 | 这个界定符号.

  • 仅能处理由前面一个命令传来的 正确 信息,即standard output,对于standard error 没有直接处理能力.

  • 管道命令必须能够接受来自前一个命令的数据成为 standard input 继续处理.

下面为一些管道命令:

选取命令:cut,grep

排序命令:sort,wc,uniq

双向重定向:tee

字符转换命令:tr,col,join,paste,expand

切割命令:split

参数代换:xargs

选取命令 : cut , grep

选取信息通常是针对 行 来分析的,并不是整篇信息.

  • cut : 将同一行里面的数据进行分解,

    cut -d'分隔字符' -f fields <==用于分隔字符,-f 取出第几段
    echo $PATH | cut -d ':' -f 5 //以:作为分隔符,取第5段.

    cut -c 字符范围 <==用于排列整齐的信息!
    export | cut -c 12- //去除export输出信息第12个字符后的全部字符串.每一行!!!

  • grep : 分析一行数据,若有想要的信息,将 该行 取出.

    grep [-acinv] [--color=auto] '查找字符串' filename
    -i:忽略大小写
    -v:反向选择,即选出没有'查找字符串'内容的行

    last | grep 'root' //将last当中,出现root的行取出
    last | grep -v 'root' //将last当中,没有出现root的行取出

    last | grep 'root' | cut -d ' ' -f 1 //将last当中,出现root的行取出,并且进取第一列.


排序命令 : sort , wc , uniq

  • sort , 排序的字符与语系的编码有关,建议使用 LANG=C 统一语系

    sort [-fbMnrtuk] [file or stdin]
    -r:反向排序
    -t:分隔符,默认[Tab]
    -k:以那个区间(field)来进行排序

    cat /etc/passwd | sort //默认以第一个数据来排序

    cat /etc/passwd | sort -t ':' -k 3 //以:来分隔,且以第三列来排序

  • uniq , 排序sort完成后!,使用uniq,重复的数据仅列出一个显示

    uniq [-ic]
    -i:忽略大小写
    -c:进行计数

    last | cut -d ' ' -f 1 | sort | uniq
    last | cut -d ' ' -f 1 | sort | uniq -c

  • wc , 显示 行 , 字数 , 字符数

    wc [-lwm]
    -l:行,-w:多少字(英文单字),-m:多少字符


双向重定向 : tee

tee 会同时将数据流送至 文件屏幕 ,

输出屏幕的,其实就是 stdout , 可以让下一个命令继续处理!

tee [-a] file // -a:累加的方式 append,将数据加入file中.

last | tee last.list | cut -d ' ' -f1 

字符转换命令 : tr , col , join , paste , expand

  • tr , 可以删除一段信息当中的文字,或者替换

    tr [-ds] SET1 ...
    -d:删除SET1这个字符串
    -s:替换掉重复的字符

    last | tr '[a-z]' '[A-Z]' //小写替换成大写

    cat /etc/passwd | tr -d ':' //删除输出信息中的冒号

  • col ,

    col [-xb]
    -x:tab转换成对等的空格键
    -b:文字内有/,仅保留反斜杠/最后接的那个字符

  • join , 将两个文件当中,有相同数据的那一行加在一起.

    join [-ti12] file1 file2

    注:在join之前,应事前对其sort排序处理

  • paste , 将两行贴在一起,且中间以[Tab]键隔开

    paste [-d] file1 file2
    -d:后面可以接分隔符,默认[Tab]

  • expand , 将[Tab]键转成空格键

    expand [-t] file
    -t:后面可以接数字,一般来说一个tab键可以用8个空格键替换


切割命令 : split

  • split , 将一个大文件依据文件大小或者行数来切割成为小文件

    split [-bl] file PREFIX
    -b:后面接切割成的文件大小,可加单位,b,k,m等;
    -l:以行数切割


参数代换 : xargs

  • xargs , 产生某个命令的参数的意思

    xargs [-0epn] command


转载于:https://www.cnblogs.com/chenjz1993/p/6917343.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值