N26-第五周博客作業

一、顯示當前系統上root、fedorauser1用戶的默認shell

[root@promote home]# grep -E ‘^(root|fedora|user1)’ /etc/passwd |
cut -d : -f7

/bin/bash

/bin/bash

/bin/bash

[root@promote home]#

注:僅egrep支持(a|b)這種模式

 

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

[root@VM_221_40_centos ~]# grep -o
“\<[_[:alpha:]]\+\>(.*)” /etc/rc.d/init.d/functions

checkpid()

__pids_var_run()

__pids_pidof()

daemon()

killproc()

if($1!~/^[0-9.]+[smhd]?$/) exit 1;d=$1~/s$|^[0-9.]*$/?1:$1~/m$/?60:$1~/h$/?60*60:$1~/d$/?24*60*60:-1;if(d==-1)
exit 1;delay+=d*$1} END {printf(“%d”,delay+0.5)}’)

pidfileofproc()

pidofproc()

status()

echo_success()

echo_failure()

echo_passed()

echo_warning()

update_boot_stage()

success()

failure()

passed()

warning()

action()

strstr()

is_ignored_file()

is_true()

is_false()

apply_sysctl()

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos
init.d]# echo $PWD | grep -o “[^/]\+$”

init.d

[root@VM_221_40_centos
init.d]#

 

 

 擴展:取出其路徑名

[root@VM_221_40_centos init.d]# echo $PWD | grep -o
“^/.*/”

/etc/rc.d/

[root@VM_221_40_centos init.d]#

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

[root@VM_221_40_centos init.d]# ifconfig | grep -E -o
“\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>”

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

grep -E
“\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])”
/tmp/ip

 

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

郵箱地址中用戶名可以是數字、字母(分大小寫)、下劃線。

grep -Eo “\<[a-z,A-Z,0-9,_-]+@[A-Z,a-z,0-9,-]+\.[A-Z,a-z,0-9]{2,}\>”
/tmp/mail

或者

grep -o
“\<[a-z,A-Z,0-9,_]\+@[A-Z,a-z,0-9,-]\+\.[A-Z,a-z,0-9]\{2,\}\>”
/tmp/mail

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

[root@VM_221_40_centos ~]# find /var -user root -group mail -ls

 24631    4 drwxrwxr-x   2 root     mail         4096 May 15 00:22
/var/spool/mail

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find /home -nouser -a -nogroup -ls | more

278530    4 drwx——   3 1000     1000         4096 May 15 00:23
/home/gentoo

278534    4 -rw——-   1 1000     1000          126 May 15 02:02
/home/gentoo/.bash_hi

story

278535    4 drwxrwxr-x   2 1000     1000         4096 May 15 00:23
/home/gentoo/gen

278531    4 -rw-r–r–   1 1000     1000          231 Aug  3  2016
/home/gentoo/.bashrc

278532    4 -rw-r–r–   1 1000     1000           18 Aug  3  2016
/home/gentoo/.bash_lo

gout

278533    4 -rw-r–r–   1 1000     1000          193 Aug  3  2016
/home/gentoo/.bash_pr

ofile

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find /home
-nouser -a -nogroup -a -ctime -3 -ls | more

278530    4 drwx——   3 1000     1000         4096 May 15 00:23 /home/gentoo

278534    4 -rw——-   1 1000     1000          126 May 15 02:02
/home/gentoo/.bash_hi

story

278535    4 drwxrwxr-x   2 1000     1000         4096 May 15 00:23 /home/gentoo/gen

278531    4 -rw-r–r–   1 1000     1000          231 Aug  3  2016
/home/gentoo/.bashrc

278532    4 -rw-r–r–   1 1000     1000           18 Aug  3  2016
/home/gentoo/.bash_lo

gout

278533    4 -rw-r–r–   1 1000     1000          193 Aug  3  2016
/home/gentoo/.bash_pr

ofile

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find ./ -perm -222 –ls

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

[root@VM_221_40_centos
~]# find /etc -size +1M -type f –ls

 

原創文章,作者:lixinkuan,如若轉載,請注明出處:http://www.www58058.com/75770

(0)
lixinkuanlixinkuan
上一篇 2017-05-15
下一篇 2017-05-15

相關推薦

  • 第三周博客作業

    who useradd usermod groupadd

    Linux干貨 2017-12-17
  • Linux boot分區意外格式化或清除之后…

    boot分區在沒有備份的情況下意外被清空,包括啟動引導信息也沒了。這時若Linux還在運行,那你是幸運的, 修復的方法: 1. cat  /etc/*release      #趕快先確定當前系統的具體版本。有ISO鏡像趕快掛載上來.   &nbsp…

    Linux干貨 2016-03-22
  • 正則表達式簡述

    bashshell中的正則表達式         俗話說,工欲善其事,必先利其器。由于很多Linux的文本處理工具普遍使用到了正則表達式,因此,不理解正則表達式就無法愉快的從事Linux日常系統管理。那什么是正則表達式呢?         正則表達式(Regu…

    Linux干貨 2015-05-23
  • N28-第二周博客作業

    常用通配符
    *:表示任意長度的任意字符;

    ?:表示任意的單個字符;

    []:表示在指定范圍內的單個字符:[a-z];

    [^]:脫字符,是取反的意思,即在指定范圍以外的任意字符,如 [^0-9]表示除數字以外的一切字符。

    [:digit:] 表示所有的數字,相當于0-9

    [:lower:] 表示所有的小寫字母

    [:upper:] 表示所有的大寫字母

    [:alpha:] 表示所有的字母,

    [:alnum:] 相當于[0-9a-z]

    [:space:] 相當于空白字符

    [:punct:] 表示所有的標點符號

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。

    2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。

    3、請使用命令行展開功能來完成以下練習:

    (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d

    (2)、創建/tmp/mylinux目錄下的:
    mylinux/
    ├── bin
    ├── boot
    │?? └── grub
    ├── dev
    ├── etc
    │?? ├── rc.d
    │?? │?? └── init.d
    │?? └── sysconfig
    │?? └── network-scripts
    ├── lib
    │?? └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │?? └── local
    │?? ├── bin
    │?? └── sbin
    └── var
    ├── lock
    ├── log
    └── run

    4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。

    5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?

    6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。

    7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。

    8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。

    9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。

    10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

    11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

    12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    Linux干貨 2017-12-11
  • Linux 磁盤、文件系統管理

    Linux 磁盤、文件系統管理                                               &nb…

    Linux干貨 2016-09-01
  • bash腳本與程序包管理

    概述:本章主要介紹bash編程中的函數和數組以及字符串處理和程序包管理工具等,來幫助小伙伴們更進一步的了解bash編程的內容和軟件的安裝、更新、卸載、查詢等操作。 一、函數介紹 函數function是由若干條shell命令組成的語句塊,實現代碼重用和模塊化編程。 它與shell程序形式上是相似的,不同的是它不是一個單獨的進程,不能獨立運行,而是shell程序…

    Linux干貨 2016-08-24

評論列表(1條)

  • luoweiro
    luoweiro 2017-06-26 23:05

    進度要跟上了,加油。

欧美性久久久久