N22- 第五周

1、顯示當前系統上root、fedora或user1用戶的默認shell;

[root@localhost Packages]# grep -E "^(root|fedora|user1\>)" /etc/passwd | cut -d: -f 1,7
root:/bin/bash
fedora:/vin/zsh
user1:/bin/bash

2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello();

[root@localhost Packages]# grep -E "\<[a-z]*\>\(\)" /etc/rc.d/init.d/functions 
checkpid() {
daemon() {
killproc() {
pidfileofproc() {
pidofproc() {
status() {
success() {
failure() {
passed() {
warning() {
action() {
strstr() {

3、使用echo命令輸出一個絕對路徑,使用grep取出其基名;

[root@localhost ~]# echo /etc/sysconfig/network-scripts/ | grep -E -o '^/.*[^/]' | grep -E -o '[^/]+/?$'
network-scripts

    擴展:取出其路徑名

[root@localhost ~]# echo /etc/sysconfig/network-scripts/ | grep -E -o '^/.*[^/]' | grep -E -o '^/.*/'
/etc/sysconfig/


4、找出ifconfig命令結果中的1-255之間數字;

[root@localhost ~]# ifconfig | grep -E -o '\([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]\)'
167
77
73
41
63
150
192
168

5、挑戰題:寫一個模式,能匹配合理的IP地址;

[root@localhost ~]# ifconfig | grep -E -o "\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>"
192.168.8.233
192.168.8.255

6、挑戰題:寫一個模式,能匹配出所有的郵件地址;

[root@localhost scripts]# grep -E -o '[^[:space:]]+@[^[:space:]]+\.com'  mail.txt 
123434@163.com
steph_fase@163.com
sdf2121_fsdf@sohu.com

7、查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄;

[root@localhost tmp]# find /var -user root -group mail -ls 
201327614    0 drwxrwxr-x   2 root     mail           67 Nov 15 13:24 /var/spool/mail

8、查找當前系統上沒有屬主或屬組的文件;

[root@localhost tmp]# find / \( -nouser -o -nogroup \) -ls
 46767   35 -rw-rw-r--   1 502      502         35380 Jul  4  2014 /mnt/dvd/Packages/zziplib-utils-0.13.62-5.el7.x86_64.rpm
 46771  137 -rw-rw-r--   1 502      502        140092 Jul  4  2014 /mnt/dvd/Packages/zziplib-devel-0.13.62-5.el7.x86_64.rpm
 46776  137 -rw-rw-r--   1 502      502        140088 Jul  4  2014 /mnt/dvd/Packages/zziplib-devel-0.13.62-5.el7.i686.rpm
 46784   82 -rw-rw-r--   1 502      502         83176 Jul  4  2014 /mnt/dvd/Packages/zziplib-0.13.62-5.el7.x86_64.rpm
 46788   82 -rw-rw-r--   1 502      502         83640 Jul  4  2014 /mnt/dvd/Packages/zziplib-0.13.62-5.el7.i686.rpm

     進一步:查找當前系統上沒有屬主或屬組,且最近3天內曾被訪問過的文件或目錄;

[root@localhost tmp]# find / \( -nouser -o -nogroup \) -atime -3 -ls

9、查找/etc目錄下所有用戶都有寫權限的文件;

[root@localhost tmp]# find /etc -perm -222 -type f -ls

10、查找/etc目錄下大于1M,且類型為普通文件的所有文件;

[root@localhost tmp]# find /etc/ -size +1M -type f -ls 
2155134 6228 -r--r--r--   1 root     root      6376691 Aug 25 10:12 /etc/udev/hwdb.bin
137800582 1364 -rw-r--r--   1 root     root      1395438 Jun 10  2014 /etc/gconf/schemas/ekiga.schemas

11、查找/etc/init.d/目錄下,所有用戶都有執行權限,且其它用戶有寫權限的文件;

[root@localhost init.d]# find /etc/init.d/ -perm -113 -ls 
  8316    0 ---x--x-wx   1 root     root            0 Nov 17 11:13 /etc/init.d/a

12、查找/usr目錄下不屬于root、bin或hadoop的文件;

[root@localhost init.d]# find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls  
1431384    4 drwx------   2 polkitd  root         4096 Aug 25 10:18 /usr/share/polkit-1/rules.d

13、查找/etc/目錄下至少有一類用戶沒有寫權限的文件;

[root@localhost init.d]# find /etc/ -perm -111 -type f -ls

14、查找/etc目錄下最近一周內其內容被修改過,且不屬于root或hadoop的文件;

[root@localhost init.d]# find /etc -mtime -7 -a -not \( -user root -o -user hadoop \) -ls





原創文章,作者:N22-成都-stephen,如若轉載,請注明出處:http://www.www58058.com/59550

(0)
N22-成都-stephenN22-成都-stephen
上一篇 2016-11-21 10:12
下一篇 2016-11-21 10:55

相關推薦

  • 文件系統管理

                                高級文件系統管理 磁盤配額 控制用戶在一個分區上使用多大的空間。 操作步驟: 1、創建一個10G的分區 /dev/sdc1并將其格式化,掛載 2、如果是新…

    Linux干貨 2016-08-29
  • 優云老王(三)談埋點:人生處處有埋點

    說到埋點,的確是用戶最感興趣的話題之一,優云Web產品在內測階段便收到了用戶的各種反饋,反復問我無碼埋點是怎么做的。在此我專門與大家聊聊埋點以及各種實現方案的利弊。 1、埋點的來歷 先說下埋點的來歷,其實在互聯網沒流行起來之前,埋點并不是用來分析用戶行為的,技術人員為了解決某些問題,就在代碼里面加入了些行為邏輯代碼,如果用戶使用產品的過程中出了問題,就生成一…

    2016-09-19
  • linux文本處理三劍客—grep

      cat:concatenate 文本文件查看工具 cat [option] filename… -n:給顯示出來的文本行加上編號 -b:非空行編號 -V:顯示 ^ -E:顯示行結束符$ -T:顯示制表符 -A:顯示所有控制符-A=-VET -s:壓縮連續…

    系統運維 2016-08-05
  • ACL

    acl 權限的理解

    Linux干貨 2018-03-19
  • 隨筆—git的基本命令

    git是一個非常優秀的版本控制系統,可以對各類大小的項目進行源代碼管理,  #git的常用功能如下: 1、從服務器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。 2、在本地倉庫上根據不同的開發目的,創建分支,修改代碼。 3、在本機上向自己創建的分支上提交代碼。 4、在本機上合并分支。 5、將本地倉庫代碼和分支推送到服務器上的遠程倉庫 在官網…

    Linux干貨 2016-07-04
  • 運維工程師技能需求排行

    這是我今天在拉勾網搜索運維,翻完了4四頁也招聘信息之后得到的,我的目的是想要看看之后的學習,哪個更應該成為重點,有些在我意料之中,有些還真的沒想到,算是努力了一個小時的收獲吧,分享給大家。
    注意:其中的看法僅代表個人觀點,很多都是依靠我自己的學習經驗和工作經驗累積的

    Linux干貨 2017-12-12

評論列表(1條)

  • luoweiro
    luoweiro 2016-11-29 22:50

    作業完成的還算不錯,有拓展和挑戰,如果有自己對grep的基礎總結就會更好了,加油。

欧美性久久久久