特殊符号

   >    或者1>   标准输出重定向 先把文件的内容清空  再放入新的内容

>> 或   2>>  追加重定向  把内容放入文件的最后一行

1     表示执行正确的内容才能通过漏斗

2>                标准错误重定向   错误的内容才能通过漏斗

2>>              错误追加重定向   eho hello >>/data/oldboy.txt   2>&1 对的错的都放入文件中

<                 输入重定向  给文件能容分列xargs -n2 </data/num.txt  把文件内容分为两列

<<               追加输入重定向 逐行输入内容

cat >>/data/oldboy.txt<<EOF

I
                           am
                           studying-
                           linux
                           EOF

~                    当前用户的家目录 root  ~  ==/root       oldboy~ ===/home/oldboy

!                    查找并运行历史命令 !awk 包含awk的命令 运行最近的一条

history |grep awk awk历史命令

#                    注释   或root用户的命令提示符

$                    取出变量的内容

awk  $取出某一行的内容   或普通用户的命令提示符

*                      表示所有

\                      转义字符  或撬棍

\n 换行符

\b 单词边界

\r 回车

\t 横向制表符

\. 普通字符小数点消除.点的正则

&&                  前一个命令执行成功然后执行后一个命令

||                      前一个命令执行失败再执行后面的命令

$(    )      ()里的结果留下交给前面的命令处理 #cp   $(find /app/logs/ -type f -name "*.log")   /tmp/a/

$(    )=== `` 反引号

'   '         不具有变量置换功能,输出时所见即所得

"  "          具有变量置换功能,解析变量输出

;              多条命令同时依次执行 相互不依赖

{  }            生成序列 # echo {1..10}   echo stu{01..10} 用作备份cp   oldboy.txt{,.bak}

正则表达式

基础正则BRE  grep 、sed 、awk 

     ^       以某某字符开头

     $       以某个字符结尾

^$     表示空行 不是空格

.        点表示任意字符

*       重复上一个字符0次或>=1次

.*      表示所以字符

^.*     以任意多个字符开头

.*$    以任意多个字符结尾

[   ]    匹配字符串内的任意一个字符,如[abc]匹配a或b或c,[a-z]匹配所有小写字母

[^  ]   匹配不包含字符串内的任意字符,取反

扩展正则ERE  egrep、sed -r、awk

+      重复上一个字符一次或一次以上,常与[ ]使用  [0-9]+匹配连续数字

?      重复上一个字符0次或者一次

{n,m}重复前面a字符n到m次

{n, }   重复前面a字符至少n次

{ ,m}  重复前面a字符最多m次

{n}     重复前面a字符n次

(  )     分组过滤,如()内的内容为一个整体;反向引用:如\1表示引用第一个()里面的内容

|         匹配左边字符或者右边字符

使用举例 执行命令取出 linux 中 eth0 的 IP 地址

[root@oldboyedu01-nb ~]# ifconfig eth0|awk 'NR==2'

inet addr:10.0.0.200 Bcast:10.0.0.255 Mask:255.255.255.0

[root@oldboyedu01-nb ~]# ifconfig eth0|awk 'NR==2'|awk '{print $2}'

addr:10.0.0.200
     [root@oldboyedu01-nb ~]# ifconfig eth0|awk 'NR==2'|awk '{print $2}'|awk
 -F":" '{print $2}'
10.0.0.200

或者1 # ifconfig eth0|awk -F "[: ]+" 'NR==2{print $4}'

2# ifconfig eth0|sed -n '2p'|sed -r 's#^.*dr:(.*)  Bc.*$#\1#g'

3#ifconfig  eth0|sed  -nr  '2s#^.*dr:(.*)  Bc.*$#\1#gp'

如何取得/etc/hosts 文件的权限

stat /etc/hosts |awk 'NR==4'

Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/root)

    stat /etc/hosts |awk -F "[(/]" 'NR==4{print $2}'

0644

stat /etc/hosts |sed -nr '4s#^.*\(([0-9]+).*$#\1#gp'

0644

stat -c%a /etc/hosts

0644

使用小结 sed 反向引用  awk指定分割符

      

linux符号与正则表达式的更多相关文章

  1. 【转】linux的特殊符号与正则表达式

    [转]linux的特殊符号与正则表达式 第1章 linux的特殊符号 1.1 通配符 * {} 1.1.1 含义 方便查找文件 通配符是用来找文件名字的. 1.1.2  * 通过find 命令找以 . ...

  2. Linux 命令——grep | 正则表达式

    感觉讲的很详细,瞬间懂了grep,正则. from: here 简介 grep (global search regular expression(RE) and print out the line ...

  3. linux的特殊符号与正则表达式

    第1章 linux的特殊符号 1.1 通配符 * {} 1.1.1 含义 方便查找文件 通配符是用来找文件名字的. 1.1.2  * 通过find 命令找以 .sh 结尾的文件,使用*替代文件名字. ...

  4. Linux之特殊符号与正则表达式

    Linux中常用的特殊符号 '' 所见即所得,吃啥吐啥 "" 特殊符号会被解析运行 `` ==== $() 先运行里面的命令 把结果留下 > 重定向符号 先清空文件的内容 然 ...

  5. (大数据工程师学习路径)第一步 Linux 基础入门----正则表达式基础

    介绍 虽然我们这一节的标题是正则表达式,但实际这一节只是介绍grep,sed,awk这三个命令,而正则表达式作为这三个命令的一种使用方式(命令输出中可以包含正则表达式).正则表达式本身的内容很多,要把 ...

  6. Linux运维正则表达式之grep

    一.什么是正则表达式?简单的说,正则表达式就是一套处理大量的字符串而定义的规则和方法.例如:假设 @代表12345通过正则表达式这些特殊符号,我们可以快速过滤.替换需要的内容.linux正则表达式一般 ...

  7. Linux基础之-正则表达式(grep,sed,awk)

    一. 正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式是对字符串操作的一种逻辑公 ...

  8. Day004_Linux基础命令之特殊符号与正则表达式通配符

    特殊符号: . 点 cd . 表示当前目录 ' '' 单引号,所见即所得 原封不动输出 " ""双引号,里面的特殊符号会被解析运行 `` ====$( ) 先运行() 里 ...

  9. linux中的正则表达式知识梳理

    1. 正则表达式 1.1 正则表达式使用 正则表达式是开发者为了处理大量的字符串和文本而定义的一套规则和方法,使用正则表达式可以提高效率,快速获取想要的内容. 正则表达式常用于linux三剑客grep ...

随机推荐

  1. LOJ #2013「SCOI2016」幸运数字

    时限为什么这么大啊 明摆着放多$ log$的做法过啊$QAQ$ LOJ #2013 题意 有$ Q$次询问,每次询问树上一条链,点有点权,你需要选择一些链上的点使得异或和尽量大 点数$ \leq 2* ...

  2. spring boot 与 spring cloud 关系

    公司使用spring cloud,所以稍微了解一下 看了一下spring官网对 spring boot 以及 spring cloud 的解释 Spring Boot Spring Boot make ...

  3. Django REST framework 简介

    需求 REST framework需要如下: Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6) Django (1.10, 1.11, 2.0) 下面的文件包可以选择性安装 ...

  4. synchronized底层实现原理&CAS操作&偏向锁、轻量级锁,重量级锁、自旋锁、自适应自旋锁、锁消除、锁粗化

    进入时:monitorenter 每个对象有一个监视器锁(monitor).当monitor被占用时就会处于锁定状态,线程执行monitorenter指令时尝试获取monitor的所有权,过程如下:1 ...

  5. requirements.txt文件教程

    方法有2种,命令都是一样,只是执行地方不一样 此方法主要用于迁移新环境使用,为防止代码出现问题,最好使用原装库,所以就有了迁移代码和库的操作 第一种:在pycharm中,左下角有个双重正方形,点击里面 ...

  6. 反卷积(deconvolution)

    deconvolution讲解论文链接:https://arxiv.org/abs/1609.07009 关于conv和deconvoluton的另一个讲解链接:http://deeplearning ...

  7. MySQL 4.1-5.0-5.1-5.5-5.6各版本的主要区别

    各版本的一些命令差异:  show innodb status\G mysql-5.1  show engines innodb status\G mysql-5.5  关于grant授权 mysql ...

  8. Linux 文件系统IO性能优化【转】

    转自:https://blog.csdn.net/doitsjz/article/details/50837569 对于LINUX SA来说,服务器性能是需要我们特别关注的,包括CPU.IO.内存等等 ...

  9. 【转】HashMap实现原理及源码分析

    哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景极其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出 ...

  10. 深入学习NAT工作原理

    深入学习NAT工作原理 我们单位中的电脑很多,组成了一个局域网,网络中只有一个电脑和外网(Internet)相连,当然有一个外网地址,但仅仅一个.我以前一直不明白,我们局域网的电脑均能上网,几台同时上 ...