命令的输出需要经过好几道手续才能得到我们想要的格式,需要用到管线(pipe),(|)
管线命令(|)仅能处理stdandard output,对stdandard error output会忽略
管线命令(|)指令必须能够接受来自前一个命令的输出,并做为standard input继续处理
 
cut -d'分隔字元' -f fields 用于有特定分隔字元
cut -c字元区间
-d:后面接分隔字元,与-f一起使用
-f:依据-d的分隔字元将一段讯息分隔开,用-f取出第几段
-c:以字元的单位取出固定字元区间,适用于具有固定格式的内容
 
通过一个指令的执行来判断后面的指令要不要执行,需要&&和||的帮忙
cmd1 && cmd2 若cmd1执行完毕且正确($?=0),则执行cmd2
             若cmd1执行完毕且为错误($?!=0),则cmd2不执行
cmd1 || cmd2 若cmd1执行完毕且正确($?=0),则不执行cmd2
             若cmd1执行完毕且为错误($?!=0),则执行cmd2   
command1 && command2 || command3
一般command2和command3放置一定可以成功的命令
 
 
grep 分析一行指令,若有我们所需要的信息,就将该行列出来
grep [-acinv] [--color=auto] '搜寻字符串' filename
-a:将binary档案以text档案的方式搜寻资料
-c:计算找到'搜寻字串'的次数
-i:忽略大小写的不同
-n:输出行号
-v:显示没有'搜寻字串'内容的那一行
--color=auto:将找到的关键字部分加上颜色
 
将重复的资料仅显示一个:uniq [-ic]
-i:忽略大小写的不同
-c:进行计数
 
查询资料有多少字,多少行,多少字元:wc [-lwm]
-l:仅列出行数
-w:仅列出多少字(英文单词)
-m:多少字元
 
将输出到屏幕的保存一份到文件:tee [-a] file
-a:以累加的方式将资料加入file
 
删除一段信息中的文字或进行替换:tr [-ds] SET1
-d:删除讯息当中的SET1子串
-s:取代掉重复的字元
 
col [-xb]
-x:将tab键转换成对等的空白键
-b:过滤控制字符,常用来将man page转存成纯文字档方便查阅
 
 
某些指令需要档案名称来进行处理时,stdin和stdout可以用'-'来替代,
 
如:
tar -cvf - /home | tar -xf -
 
 

bash之管线命令的更多相关文章

  1. Linux系列(11):之bash进阶与数据流导向、管线命令

    1.万用字符与特殊字符 在bash的环境下有一个特别有用的功能,那就是万用字符!下面展示常见的万用字符: 1.万用字符 除了万用字符还有一些其他的特殊字符,接下来显示特殊字符. 2.特殊字符 2.数据 ...

  2. shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)

    如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...

  3. 第十一章、认识与学习 BASH 管线命令 (pipe)

    管线命令使用『 | 』界定符号 [root@www ~]# ls -al /etc | less 管线命令『 | 』仅能处理经由前面一个命令传来的正确信息,也就是 standard output 的信 ...

  4. Linux入门之常用命令(6)Bash命令重定向 管线命令

    命令重定向 将目前所得数据转移到其他地方 >  将输出结果导入文件 如  ls -l / >test     (1)若test文件不存在则创建 (2)若test文件存在 清空后写入 > ...

  5. Linux管线命令

    一.什么是管线命令 bash 命令运行的时候有输出的数据会出现! 那么如果这群数据必需要经过几道手续之后才能得到我们所想要的格式,应该如何来配置? 这就牵涉到管线命令的问题了 (pipe) ,管线命令 ...

  6. Linux管线命令 - cut,grep,sort,uniq,wc,tee,tr,col,join,paste,expand,split,xargs

    在每个管线后面接的第一个数据必定是『命令』喔!而且这个命令必须要能够接受 standard input 的数据才行,这样的命令才可以是为『管线命令』,例如 less, more, head, tail ...

  7. Linux学习之十四、管线命令

    Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php

  8. Bash内置命令exec和重定向

    Bash内置命令exec可以替换当前程序而不需要启动一个新的进程,可以改变标准输入和输出而不需要启动一个新的子进程.如果文件用exec打开,read命令就会把文件指针每次指向下一行直到文件的末尾,如果 ...

  9. bash内建命令

    bash内建命令 1.local命令 基本介绍 local命令是用来定义一个局部变量的,它只能定义在函数中,并且随着函数的结束而被销毁 基本语法 local  [option]  name[=valu ...

随机推荐

  1. ipyparallel WordCount实现

            ipyparallel 之中,可以利用多个engine同时运行一个任务来加快处理的速度.在ipyparallel之中,集群被抽象为view,包括direct_view和balanced ...

  2. 2.4. 属性(Core Data 应用程序实践指南)

    属性的名称必须以小写字母开头. 添加 name 和 quantity 属性.

  3. 字符集 ISO-8859-1(1)

    HTML 4.01 支持 ISO 8859-1 (Latin-1) 字符集. ISO-8859-1 的较低部分(从 1 到 127 之间的代码)是最初的 7 比特 ASCII. ISO-8859-1 ...

  4. 网格视图(GridView)功能和用法

    GridView用于在界面上按行.列分布的方式来显示多个组件.GridView和ListView有共同的父类:AbsListView,因此GridView和ListView具有很高的相似性,它们都是列 ...

  5. 关于MATSIM中,如何关闭自动加载dtd的问题

    有用过MATSIM做交通仿真的朋友应该都知道,在创建Scenario时,会默认加载matsim官网的netword的dtd文件,然后因为网络的问题,加载往往会报错,从而造成系统异常退出,如图所示: 根 ...

  6. 原生javascript实现图片放大镜效果

    当我们在电商网站上购买商品时,经常会看到这样一种效果,当我们把鼠标放到我们浏览的商品图片上时,会出现类似放大镜一样的一定区域的放大效果,方便消费者观察商品.今天我对这一技术,进行简单实现,实现图片放大 ...

  7. loadrunner Analysis :SLA(Service Level Agreement服务水平协议)

    SLA是为负载场景定义的具体目标,用于与实际负载结果比较,确定系统是否达到性能目标. 1.1.1     设置SLA(以Transaction Response Time(Average)为例) 可以 ...

  8. CodeForces 429B

    Working out Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u   Desc ...

  9. 在C语言中以编程的方式获取函数名

    仅仅为了获取函数名,就在函数体中嵌入硬编码的字符串,这种方法单调乏味还易导致错误,不如看一下怎样使用新的C99特性,在程序运行时获取函数名吧. 对象反射库.调试工具及代码分析器,经常会需要在运行时访问 ...

  10. WinForm——记住密码

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runti ...