linux常用命令

1: grep  'git'   /etc/passwd    -- 查询 /etc/passwd 下包含 ‘git’ 的文件,区分大小写

2:grep  -v  'git' /etc/passwd   -- 取反   查询 /etc/passwd 下不包含 ‘git’ 的文件

3:  grep -v -n 'git' /etc/passwd    --  n显示行号,也可以命令连用   grep -vn 'git' /etc/passwd

4: -w   精准匹配        --   grep -wn 'polkitd' /etc/passwd  必须要一致才能查询出来

5:  -i         # 忽略大小写

6:      ^      #匹配开头的内容

7: -E   #匹配多个字符内容      grep -E 'ftp|NSCD|bus' /etc/passwd

cut  命令

    -d    #对指定的列进行切割获取,  cut  -d  '分割符'  -f  1,3   /文件路径    -f 是代表要截取的列

实例1: 获取第一列的内容            cut -d ':' -f  1 /etc/passwd

实例二:获取第一列和第三列内容     

cut -d ':' -f 1,3 /etc/passwd

实例三 : 获取第一列到第三列的内容

 cut -d ':' -f 1-3 /etc/passwd

实例四: 获取第三列后面的所有内容

cut -d ':' -f 3- /etc/passwd

-c   # 以字符为分割,截取第几个字符到第几个字符

cut -c 3- /etc/passwd  # 第三个字符以后的内容

cut -c 1-5 /etc/passwd   #第3个字符至第五个字符内容

cut -c 1,5 /etc/passwd    # 第一个字符和第五个字符内容

四:  awk命令

%s 代表字符串类型,不会进行自动换行

    换行符

 

  制表符

 $1  $2  $3.....   代表是 第一列,第二列,第三列......

 $0 代表 一整行

awk 语法

awk '条件1 {执行动作} 条件2 {执行动作} ...' 文件名

或awk [选项] '条件1 {执行动作} 条件2 {执行动作} ...' 文件名


实例1:
获取字段

  

df -h |grep '/sys/fs/cgroup' |  awk '{print $6}'      显示出内容,在把内容通过管道符传给grep查询过滤找出包含关键字的那一行,在打印出需要内容的列

实例二:获取文件的第二列所有内容

命令:   cat /etc/passwd | awk  -F ":"   '{print $2}'    

 -F:  指定分割符, 分割出来后打印第二列

实例三:

BEGIN    #在读取全部内容前就会被执行,常用于修改内置变量的值

FS        #在使用了 BEGIN 时, FS 指定分隔符

 cat /etc/passwd | awk '{print $1}  BEGIN{ FS=":"}'

实例四

end   #在执行完所有命令后才执行

cat /etc/passwd |awk -F ":"  ' END {print "END-------- "}   {print $1} ' 

实例四:

NR     #代表行号,指定要打印显示的内容

实例五:打印出指定行之间的内容

df -h | awk '(NR>=2 && NR<=6) {print $5}'

linux  send 命令主要对数据进行处理(选取,新增,替换,删除,搜索)

sed语法:sed [选项][动作] 文件名

实例一: 打印系统信息的第三行

df -h | sed -n '3p'       # n代表把匹配到的行输出打印   p代表行的单位  比如第2行  '2p'  通常和n一起连用

 

实例 2: 删除第二列的内容

df -h | sed  '2d'      # d是代表删除, 比如要删除第4行   sed  '4d'  文件名(这边的删除只是删除打印的信息,不会真的删除原文件的内容)

实例 3 :对源文件删除内容

1:先把信息打印到一个文件里

df -h  > demo.txt 

2:删除文件中的第二行

sed -i  '2d'   demo.txt     # -i 是对源文件真的执行增删改查,操作先先备份好

实例4:在文件的第一行插入新的内容

sed -i  '1a  11111111122222222222222'   demo.txt    # a代表的是在指定行的下面插入新的内容

实例5:在行的上面插入一行

sed -i '2i  33333333333333'   demo.txt     # i代表的是在指定行上面插入一行

 

实例6:替换第二行的内容

sed -i '2c   ppppppppp'  demo.txt    #c代表的替换行内容

 

 实例7:替换指定的内容

sed  -i  's/920M/100000M/g'   demo.txt        # s/原内容/要替换内容/g 

实例8:使用sed查询内容

cat  demo.txt | sed -n '/1000/p'

 

实例9:使用sed 实现多条命令连用

-e  代表能使用多条命令

 cat demo.txt | sed -n -e 's/11111111122222222222222/aaaaaaaa/g' -e '/aaaaaaaa/p'    #先查询出 demo.txt文件内容 通过管道符传递给sed, -n 打印信息到控制台, -e 命令连用 ,先替换内容,在把替换的内容查询出来

  

原文地址:https://www.cnblogs.com/HuangXingLei/p/12740184.html