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. 2015 PHP框架调查结果出炉,Laravel最受欢迎!

    日前,SitePoint花了一个月时间进行了有关PHP框架使用情况的调查,通过调查结果所示,无论是在团队项目还是个人项目:无论是国家或是年龄层次,Laravel都是使用最多的一款框架. 其中,最流行的 ...

  2. 《DSP using MATLAB》Problem 3.17

    用差分方程两边进行z变换,再变量带换得到频率响应函数(或转移函数,即LTI系统脉冲响应的DTFT). 代码: %% ------------------------------------------ ...

  3. spket插件的安装与使用完整图文版

    下载最新破解版的spket1.6.18(见下面附件) 对于目前的MyEclipse的插件安装是很简单的,把spket1.6.18破解版.zip解压后直接复制到MyEclipse安装目录的dropins ...

  4. 转oracle 学习- 数据类型

    oracle数据类型 有道是,磨刀不误砍柴工.多了解一些底层的东西,对于Oracle开发.维护大有裨益.个人总结了一些Oracle数据类型集解,相信读者阅读了本文以后,Oracle数据库开发起来会事半 ...

  5. ThinkPHP 更新 5.0.23 和 5.1.31

    ThinkPHP 更新 5.0.23 和 5.1.31 FastAdmin 也跟着更新. V1.0.0.20181210_beta 修复 ThinkPHP5.0发布了一个重要安全更新,强烈建议更新 修 ...

  6. VS2010 C++编译报错LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

    查找是否有两个cvtres.exe.一个是C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe, 另一个是C:\Wi ...

  7. 打开Visual Studio 2012的解决方案 连接 Dynamics CRM 2011 的Connect to Dynamics CRM Server 在其工具下没有显示

    一.使用TFS 代码管理,发现Visual Studio 2012 菜单栏 工具下的Connect to Dynamics CRM Server 没有显示. 平常打开VS下的工具都会出现Connect ...

  8. [转]oracle导入提示“IMP-00010:不是有效的导出文件,头部验证失败”的解决方案

    这是由于导出的dmp文件与导入的数据库的版本不同造成的用Notepad++查看了dmp文件,在头部具修改成你将导入目标数据库的版本号以下对应的版本号: 11g R2:V11.02.00 11g R1: ...

  9. Java初学几个程序背诵

    1.Hello world class first { public static void main(String[] args){ System.out.println("Hello w ...

  10. dedecms问答模块时间显示1970-01-01的解决办法

    在使用dedecms的问答模块的时候,很多人希望能在模板上加上问题的时间,一般我们采用这样的dede标签: {dede:ask row=24 titlelen='50' sort='ok'}   &l ...