第5天(半天)【shell编程初步、grep及正则表达式】

shell编程初步(01)_recv

shell脚本:文本文件

#!:/bin/bash

#!:/usr/bin/python

#!:/usr/bin/perl

  案列1:

Vim first.sh

#!:/bin/bash

Cat /etc/fstab

Wc –l /etc/fstab

给脚本权限              Chmod a+x first.sh

运行脚本                   ./first.sh

------------------------------------------------------------------

逻辑运算:

True

False

与:

1 && 1 =1

1 && 0=0

0 && 1 =0

0 && 0 =0

  或:

   1 || 1= 1

     1 || 0= 1

     0 || 1= 1

    0 || 0 =0

  非:

    !1 = 0

    !0 = 1

grep及正则表达式(02)_recv

Linux上文本处理三剑客:

    Grep:文本过滤工具

    Sed:文本编辑工具

    Awk:

Grep:Global search Regular expression and print out the line

作用:文本搜索工具,根据用户指定的模式对目标文本逐行进行陪陪检查;

Grep:

-v:反转查找,既输出与查找条件不相符的行

Grep root /etc/passwd

-E:扩展正则表达式;

-G:基本正则表达式;

-F:固定字符串

-i:忽略字符大小写;

-o:仅显示匹配到的字串;

Grep –o root /etc/passwd

-q:静默模式,不输入任何信息

Grep –q root /etc/passwd

-c:统计一共有多少行;

-n:在左侧显示行号;

-A number:后#行

-B number:前#行

-C number:前后#行

Grep –c ‘nologin’ passwork

Allisa grep=‘grep –color=auto’

Grep root /etc/passwd

基本正则表达式元字符:

字符匹配:

.:匹配任何单个字符

Grep  ‘r.ot’ /etc/passwd

[]:匹配指定范围内的任意单个字符

Grep [root] /etc/passwd

       [^]:匹配指定范围外的任意单个字符
           Grep [^root] /etc/passwd
       [0-9]: 统计指定范围内的数字
           Grep [0-9] /etc/passwd00 
             [:digit:]、[:lower:]、[:upper:]、[:alpha:]、[:alnum:]、[:punct:]、[:space:]
          Grep [0-9] /etc/passwd

匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数;

*:匹配前面的字符任意次;

例如:grep “x*y”

.*:任意长度的任意字符;

位置锚定:

^:行首锚定,用于模式的最左侧

$:行尾锚定,

^$:空行;

第5天(半天)【shell编程初步、grep及正则表达式】的更多相关文章

  1. Linux-awk和shell编程初步

    1 awk 格式: awk -选项 '处理' 输入 awk -F : '{print $1}' file -F指定分隔符, 默认是空格 $1 分割后的第一部分 $0 获得所有部分 NF 表示以分隔符分 ...

  2. Linux Shell编程第3章——正则表达式

    目录 正则表达式基础 正则表达式的扩展 通配 grep命令 正则表达式基础 Linux Shell以字符串作为表达式向系统传达意思.元字符(Metacharacters)是用来阐述字符表达式意义的字符 ...

  3. Linux:Day5 shell编程初步、grep

    bash的基本特性(3) 1.提供了编程环境 程序编程风格: 过程式:以指令为中心,数据服务于指令: 对象式:以数据为中心,指令服务于数据: shell程序:提供了编程能力,解释执行:过程式.解释执行 ...

  4. Shell编程初步

      一:Hello World 新建一个文件,命名时以 .sh 为后缀.每个bash文件开头第一行表名文件类型: #!/bin/bash 然后在下面输入代码. 比如输出hello world: #!/ ...

  5. linux之shell编程初步

    #################适用于CentOS6################## #!/bin/bash ########################################## ...

  6. shell编程学习笔记之正则表达式初识

    1.对单字符的查找: 1.1单字符: ‘X’ $ grep ‘q’ passwd //查找单个字符 1.2 范围字符 [] [^] 1.3 任意字符 . $ grep '[1-9]' passwd / ...

  7. 01 shell编程规范与变量

    前言: 大家对shell脚本应该都不算陌生了,如果突然问你什么是shell脚本?是干什么用的?由什么组成以及怎么使用?变量的概念是什么?作用范围是什么?变量间的算术运算怎么表示?你能很容易答出来吗 本 ...

  8. Shell编程-01-Shell脚本初步入门

    目录 什么是Shell 什么是Shell脚本 Shell脚本语言的种类 常用操作系统默认Shell Shell 脚本的建立和执行 脚本规范 什么是Shell     简单来说Shell其实就是一个命令 ...

  9. shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)

    一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...

随机推荐

  1. python tkinter Label

    """小白随笔,大佬勿喷""" #Label标签 用于可显示文本或图片,不可编辑 import tkinter as tk #初始化窗口 w ...

  2. python框架之Django(12)-认证系统之auth模块

    我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Django作为一个完美主义者的终极框 ...

  3. Linux下安装jieba

    Jieba代码对 Python 2/3 均兼容 * 全自动安装:`easy_install jieba` 或者 `pip install jieba` / `pip3 install jieba` * ...

  4. 用命令行打开sublime

    在linux下装了linux后默认并不能通过运行命令的方式打开,这就让我们不能像vim一样可以通过 vim <fileName> 来打开文件. 不过我们可以通过把sublime的执行文件放 ...

  5. 深入FM和FFM原理与实践

    FM和FFM模型是最近几年提出的模型,凭借其在数据量比较大并且特征稀疏的情况下,仍然能够得到优秀的性能和效果的特性,屡次在各大公司举办的CTR预估比赛中获得不错的战绩.美团点评技术团队在搭建DSP的过 ...

  6. DataCommand和DataAdapter

    SqlDataReader 高效,功能弱,只读访问SqlDataAdapter 强大,要求资源也大一点 SqlDataReader 只能在保持跟数据库连接的状态下才可以读取... SqlDataAda ...

  7. Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4

    Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4 from https://repo.mave ...

  8. angular中的MVC思想

    MVC是一种使用 MVC(Model View Controller 模型-视图-控制器)设计模式,该模型的理念也被许多框架所吸纳.在学习angular的过程中,我在网上查找关于angular MVC ...

  9. vim 命令学习(高级篇)

    [1]打开文件方式 (1)vim +n filename 作用:打开文件,并定位到第n行 例如:vim +103 2019-02-26-errorrepeat.txt 效果:打开2019-02-26- ...

  10. Eclipse安装svn插件的几种方式(转)

    1.在线安装: (1).点击 Help --> Install New Software... (2).在弹出的窗口中点击add按钮,输入Name(任意)和Location(插件的URL),点击 ...