字符截取-cut字段提取命令

grep -v xxx 取反

查找包括”/bin/bash”的行

[root@localhost ~]# grep "/bin/bash" /etc/passwd
root:x:0:0:root:/root:/bin/bash
imooc:x:502:889:kk,kk,kk,kk:/home/xxx:/bin/bash
cls:x:500:889:dgdzmx:/home/cls:/bin/bash
user1:x:503:503::/home/user1:/bin/bash
tony:x:504:504::/home/tony:/bin/bash
lw:x:505:505::/home/lw:/bin/bash
user2:x:506:506::/home/user2:/bin/bash

查找記錄中不包括”root”的行

[root@localhost ~]# grep "/bin/bash" /etc/passwd | grep -v "root"
imooc:x:502:889:kk,kk,kk,kk:/home/xxx:/bin/bash
cls:x:500:889:dgdzmx:/home/cls:/bin/bash
user1:x:503:503::/home/user1:/bin/bash
tony:x:504:504::/home/tony:/bin/bash
lw:x:505:505::/home/lw:/bin/bash
user2:x:506:506::/home/user2:/bin/bash
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# 

查找記錄中不包括”root”的行

[root@localhost ~]# grep "/bin/bash" /etc/passwd | grep  "root"
root:x:0:0:root:/root:/bin/bash

截取有規律的字符串,使用cut命令。

[root@localhost ~]# cut [選項] 文件名
選項

-f 列號:提取第幾列
-d 分隔符:按照指定分隔符分格列,默認分隔符是tab製表符

說明:
grep是行提取命令
cut是列提取命令

例如 截取第一列數據

[root@localhost ~]# grep "/bin/bash" /etc/passwd | grep  "root"
root:x:0:0:root:/root:/bin/bash
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# grep "/bin/bash" /etc/passwd | grep -v "root" | cut -f 1 -d ":"
imooc
cls
user1
tony
lw
user2

截取/etc/passwd中第一列和第3列數據

[root@localhost ~]# cut -d ":" -f 1,7 /etc/passwd
root:/bin/bash
bin:/sbin/nologin
daemon:/sbin/nologin
adm:/sbin/nologin
lp:/sbin/nologin
sync:/bin/sync
shutdown:/sbin/shutdown
halt:/sbin/halt
mail:/sbin/nologin
uucp:/sbin/nologin
operator:/sbin/nologin
games:/sbin/nologin
gopher:/sbin/nologin
ftp:/sbin/nologin
nobody:/sbin/nologin
vcsa:/sbin/nologin
saslauth:/sbin/nologin
postfix:/sbin/nologin
sshd:/sbin/nologin
dbus:/sbin/nologin
ntp:/sbin/nologin
nginx:/sbin/nologin
imooc:/bin/bash
cls:/bin/bash
user1:/bin/bash
tony:/bin/bash
lw:/bin/bash
apache:/sbin/nologin
user2:/bin/bash
發佈了81 篇原創文章 · 獲贊 19 · 訪問量 35萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章