awk 是单行处理文本

正则: cat test.py | awk '/a/ {print $1}'  # 如果test.py中存在a这个字母,就打印所在行的第一列(注意是该列,不是该词)。匹配成功,就 {执行操作}

ex: {print $0} 打印整行  =  {print}

其它awk命令用法:awk '{print}' ./test.py

处理所有数据的第n列

两个awk同时使用 :

先打印所有的用户信息(passwd文件),在正则匹配root用户,(匹配到就打印所有信息)

指定以冒号:分割(默认以空格分隔成列):

也阔以指定字符跟个 awk -F'string' '{print $1}' ./test1.txt

awk  -F':' 'BEGIN{print "begin"}'  {print $1} 'END{print "end"}'  ./test1.txt

在{print $1}执行前后分别 打印begin,end

awk跳行读取:

先是找到first所在行,再跳过这一行(打印除了包含first所在行)

显示行号和列数:awk -F:  '{print "第"RN"行:" "该行共"NF"列—" $0}' ./test1.txt

-F 以: 将test1.txt 分割成两列

NF和RN都是数字  ,也可以 '{print $NF}' 打印第NF列,NF表示共有n列数据,也就是打印第n列(最后一列)数据,

打印倒数第二列: '{print $(NF-1)}'

######################################

grep实在文件里面搜索目标

grep参数

-i                忽略大小写
-n 显示行号
-s 不显示错误信息
-v 反向查找
-q 不现实任何信息(shell中会用)

if   fi

if常用的选项:

-a file            如果文件存在则为真
-d file 如果文件存在并且是目录则为真
-n string 如果字符长度非0则为真
-ne 等于
-lt 不等于
.......

shell脚本中 单引号 双引号 反引号

echo '$SHELL'             单引号会将$转译成不同字符
>>> $SHELL echo "$SHELL" 双引号会保留$,\ 代表的意义
>>> /bin/bash 反引号 用来申明是命令 ex: `pwd`
          也可以: $(pwd)

$是用来调用变量

$? 是查看命令执行的状态,成功返回0,失败返回1

linnux-shell知识的更多相关文章

  1. DBA需要掌握的shell知识

    每个中高级DBA都需要掌握一些简单脚本的编写,这样才能从繁杂重复的基础维护工作中解脱出来,才能有时间去研究更有价值的技术.VBird在讲shell script的时候,给出了几个经典的小范例练习,对于 ...

  2. 每天一个shell知识--数组

    1.shell中数组的定义: 数组名=(value value1 value2 ) 也可以单独的设定数组的分量: arrayL[0]=value arrayL[1]=value1 2.${arrayL ...

  3. 几个常用的linux快捷键和shell知识

    1)   !$    !$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串.如:你可能会这样:     $mkdir mydir     $mv mydir yourdir     $cd y ...

  4. shell知识

    shell基本的语句 一:if语句 格式: if [ #条件的判断 ];then #执行的动作 fi 操作符 + 加 - 减 * 乘 /   除[取整数商] % 余[取余数] 数值的比较 参数 说明 ...

  5. shell知识积累

    Ubuntu下常用的快捷键:https://blog.csdn.net/u010771356/article/details/53543041 变量名和等号之间不能有空格,变量名中间不能有空格,可以使 ...

  6. 看懂shebang吧,只需一点点shell知识,从此再也不犯强迫症

    Python2: 开启一个terminal,输入下面命令: yshuangj@ubuntu:~$ vim helloA.py 在vim编辑器中,进入编辑模式(按i),输入下面的代码,然后退出编辑模式( ...

  7. shell 知识

    解压 tar.bz2文件 bunzip2 linux-2.6.13.tar.bz2 | tar xvf -

  8. Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程

    Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...

  9. Android shell 下 busybox,clear,tcpdump、、众多命令的移植

    http://my.oschina.net/mopidick/blog/167372 作为一名Android开发者,经常需要进入Android 的shell终端运行一些命令.但是我们发现Android ...

  10. 跟着老男孩一步步学习Shell高级编程实战

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1264627 本sh ...

随机推荐

  1. t添加最佳视口

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  2. bind() 函数兼容

    为了搞清这个陌生又熟悉的bind,google一下,发现javascript1.8.5版本中原生实现了此方法,目前IE9+,ff4+,chrome7+支持此方法,opera和safari不支持(MDN ...

  3. 《DSP using MATLAB》Problem 4.24

    Y(z)部分分式展开, 零状态响应部分分式展开, 零输入状态部分分式展开,

  4. OASGraph 转换rest api graphql 试用

    创建rest api lb4 appdemo 参考提示即可 安装 OASGraph git clone https://github.com/strongloop/oasgraph.git cd oa ...

  5. C#:消息队列应用程序

    Carl NolanMicrosoft Corporation 摘要:本文概述一种用于处理若干消息队列的 Windows 服务解决方案,重点介绍 .NET 框架和 C# 应用程序. 下载 CSharp ...

  6. HTML/CSS/Javascript代码在线压缩、格式化(美化)工具

    CSS 格式化 ProCSSor - http://procssor.com/   CSS 压缩 CSS Compressor - http://www.cssdrive.com/index.php/ ...

  7. JUC集合之 ConcurrentLinkedQueue

    ConcurrentLinkedQueue介绍 ConcurrentLinkedQueue是线程安全的队列,它适用于"高并发"的场景. 它是一个基于链接节点的无界线程安全队列,按照 ...

  8. QString和char字符串数组之间的转换 (转)

    做串口通信时,碰到这样的问题,在Qt的界面中,我用QLineEdit对象负责显示发送和接收的文本,对其中的数据进行读取和显示使用的数据类型都是QString:但是,在对串口设备进行读写时,数据使用的形 ...

  9. JZ2440 裸机驱动 第8章 NAND Flash控制器

    本章目标  了解NAND Flash 芯片的接口 掌握通过NAND Flash控制器访问NAND Flash的方法 8.1 NAND Flash介绍和NAND Flash控制器使用     NAND ...

  10. PHP常用函数总结(二):

    //=================图像处理=================================== //=================会话机制================== ...