0805linux基础小记(正则匹配)

cat -ns file   //-s,压缩重复的空行

cat -T f1  //看到tab

cat f1|tr '\t' '\r' > f2

cat -v f2 //看到^M

 

tac file //倒的显示

blob.png

rev file //反向显示每一行

echo {1..10} > f3

rev f3 

blob.png

 

more -d file 显示翻页及退出提示

blob.png

less file  文件读取中摁?反向搜索 /正向搜索  COMMAND 执行命令

 

tail -c 10 f1  显示倒数10个字符(包含换行符)

blob.png

 

一个窗口logger "this is file1"  tail -f /var/log/messages输出追加显示

tail -n 0 -f /var/log/messages &  有信息显示,没有则不显示

 

jobs 查看任务

fg # 调到前台  ctrl+C切断

ctrl + z暂停已经运行的进程

bg # 将停止的作业放到后台运行

blob.png

 

cut -d: -f1,3,5-7 /etc/passwd    // -d, –delimiter 分隔符

cut -c1-20 f2  // -c, –characters  120个字符

–output-delimiter=’分隔符

blob.png

http://www.178linux.com/wp-content/plugins/ueditor/ueditor/themes/default/images/spacer.gif

df |tr -s ' '|cut -d" " -f 5 取出use%

blob.png

 

cat /etc/issue>f3cp f3 f4;paste f3 f4 横向合并

blob.png

 

 

wc统计  -c 字节   -l hang   -w 单词

 

ctrl +d  发送一个exit信号,如root用户退回到普通用户

 

sort命令

 -b   忽略每行前面开始出的空格字符。

  -d   排序时,处理英文字母、数字及空格字符外,忽略其他的字符。

  -f   排序时,将小写字母视为大写字母。

  -c   检查文件是否已经按照顺序排序。

  -m   将几个排序好的文件进行合并。

  -M  前面3个字母依照月份的缩写进行排序。

  -n   依照数值的大小排序。

  -o<输出文件>   将排序后的结果存入指定的文件。

  -r   以相反的顺序来排序。

  -t<分隔字符>   指定排序时所用的栏位分隔字符。

  -k 指定域

 

 

 

cat /etc/passwd|sort -t: -k1      第一列按字母排序

blob.png

cat /etc/passwd|sort -nr -t: -k3  第三列按数字逆序排序

blob.png

 

sort -u file  //uniq,删除输出中的重复行

 

uniq命令

-c   //显示每行重复出现的次数

-d   //仅显示重复过的行

-u   //仅显示不曾重复的行

 

cat /etc/init.d/functions|tr -cs '[:alpha:]' '\n'|sort |uniq -c|sort -n  按单词数量排序

blob.png

 

 

diff /etc/fstab /tmp/fstab.bak -u > diff.log   //记录差异

patch -b f1 diff.log   //还原

blob.png

 

grep `whoami` /etc/passwd

grep 

-v  //排除

-n  //显示匹配的行号

-c  //匹配的行数

-q  //静默  echo $? 显示0则成功

-A  //after

-B  //before

-C  //context,前后各#

-w  //word,完全匹配

 

 

nmap -sP -v  192.168.1.103 /24|grep -B1 up|grep -v up   //扫描网段

blob.png

 

 

grep -e root -e ftp /etc/passwd    //或者的关系

blob.png

grep root /etc/passwd|grep bash     //并且的关系

 blob.png

 

grep -v "^[[:space:]]*$" f1  过滤掉空行(包含空格、tab

blob.png

 

 

*:匹配前面的字符任意次,包括0次;贪婪模式:尽可能长的匹配

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

\?:匹配前面的字符01

\+:匹配前面的字符至少1

\{n\}:匹配前面的字符n

\{n,\}:匹配前面的字符至少n

 

位置锚定:

^ :行首

$ :行尾

\<, \b :语首

\>, \b :语尾

 

 blob.png

或者

a|b

E|error: Eerror

(E|e)rror: Errorerror

 

 

\(r..t\).*\(a..b\)\1\2

rootxxxaxxbrootaxxb

blob.png

原创文章,作者:victorycommander,如若转载,请注明出处:http://www.178linux.com/30401

(0)
victorycommandervictorycommander
上一篇 2016-08-07 22:06
下一篇 2016-08-07 22:06

相关推荐

  • 文本处理三剑客之sed

    概述     经过上篇对正则表达式和grep相关内容的学习,我们对文本处理有了一个初步的认识,本篇将简要介绍一下文本处理三剑客之sed。具体分为以下几个部分:     1、sed原理概述     2、sed命令详解 第一部分 &n…

    Linux干货 2016-08-10
  • puppet部署多台服务器

    利用puppet实现自动化部署 配置前准备:   图中:蓝线表示各个服务器之间通信      红线表示puppetmaster主机向各个agent主机部署信道 A主机puppet-master主机:192.168.126.129 B主机做两种服务:keepalived高性能和nginx反代  &nb…

    2017-07-23
  • Linux权限管理与grep命令应用(第四周)

    第四周作业 1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限 [root@localhost ~]# cp -r /etc/skel/ /home/tuser1 [root@localhost ~]# ch…

    Linux干货 2016-09-15
  • Linux不同发行版之间的联系与区别

    Linux发行版有商业版、社区版两类。两者的共同点都是GNU/Linux发行版,区别在于商业版是由商业公司维护,社区版是社区组织维护。由于linux发行版都要遵循GPL协定,任何人都有使用、共享、修改软件源代码的自由,所以商业版的收入主要来自向企业提供支持服务,它的软件基本都是免费的。

    Linux干货 2018-03-04
  • N22-第三周课堂练习

    — 1.列出当前系统上所有已经登录的用户的用户名,注意:用一个用户登录多次,则只显示一次即可。     who | awk '{print $1}' | uniq 2.取出最后登录到当前系统的用户相关信息。   last | head -n 1 3.取出当前系统上被用户当作其默认shell的最多的…

    Linux干货 2016-08-30
  • 网络配置管理:ifcfg、iproute2和ss等相关命令介绍(不完整,需要后期完善)

    网络配置管理:ifcfg、iproute2和ss等相关命令介绍 ifcfg家族: ifconfig [interface] ifconfig interface [aftype] options | address …   -a :查看所有 接口信息 add<地址>:设置网络设备IPv6的ip地址 del<地址>…

    Linux干货 2017-01-19