第五周:Linux文件查找與壓縮

1烟馅、編寫腳本 createuser.sh拳昌,實現(xiàn)如下功能:使用一個用戶名做為參數(shù),如果 指定參數(shù)的用戶存在钳垮,就顯示其存在惑淳,否則添加之;顯示添加的用戶的id號等信息

---------------------------------------------if條件判斷
[root@Top ~]# cat creatuser.sh 
#!/bin/bash
read -p "Please enter a username:" USER_NAME
if `getent passwd $USER_NAME > /dev/null`;then
    echo "This user already exists!"
else useradd $USER_NAME
echo `getent passwd $USER_NAME`
fi

[root@Top ~]# bash creatuser.sh 
Please enter a username:user5
user5:x:2007:2007::/home/user5:/bin/bash

[root@Top ~]# bash creatuser.sh 
Please enter a username:user1
This user already exists!

----------------------------------------------短路與短路或條件判斷
#!/bin/bash
getent passwd $1 > /dev/null && echo "This user already exists!" || (useradd $1; getent passwd $1)

[root@Top ~]# bash creatuser1.sh user1
This user already exists!

[root@Top ~]# bash creatuser1.sh user7
user7:x:2009:2009::/home/user7:/bin/bash

2、編寫生成腳本基本格式的腳本饺窿,包括作者歧焦,聯(lián)系方式,版本,時間绢馍,描述等

set ignorecase
set cursorline
set autoindent
set nu
set paste
set et
set tabstop=4
autocmd BufNewFile *.sh exec ":call SetTitle()"
func SetTitle()
        if expand("%:e") == 'sh'
                call setline(1,"#!/bin/bash")
                call setline(2,"#")
                call setline(3,"#******************************************************************************")
                call setline(4,"#Author:                            LinXiaoLong")
                call setline(5,"#Phone:                             18509163451")
                call setline(6,"#Mail:                              18509163451@163.com")
                call setline(7,"#Date:                              ".strftime("%Y-%m-%d"))
                call setline(8,"#FileName:                          ".expand("%"))
                call setline(9,"#******************************************************************************")
                call setline(10,"set -ue")
                call setline(11,"")
                
        endif
endfunc
autocmd BufNewFile * normal G

3向瓷、查找/etc目錄下大于1M且類型為普通文件的所有文件

? 20:25:17-root:~# find /etc -size +1M -a -type f -exec ls -lh {} \;
-rw-r--r-- 1 root root 8.2M Sep 22 06:56 /etc/selinux/targeted/policy/policy.31
-r--r--r-- 1 root root 8.8M Dec 13 02:08 /etc/udev/hwdb.bin

4、打包/etc/目錄下面所有conf結(jié)尾的文件舰涌,壓縮包名稱為當天的時間猖任,并拷貝到/usr/local/src目錄備份疙渣。

find /etc/ -name "*.conf" | xargs tar czvf `date +%F`.tar.gz && cp -a `date +%F`.tar.gz /usr/local/src
find /etc/ -name "*.conf" | xargs tar czvf `date +%F`.tar.gz;cp -a `date +%F`.tar.gz /usr/local/src
#兩種方式均可锚赤,第一種方法似乎更好

5府适、查找當前系統(tǒng)上沒有屬主或?qū)俳M昔园,且最近一個周內(nèi)曾被訪問過的文件或目錄

? 22:36:13-root:/date# find / \( -nouser -o -nogroup \) -atime -7 -exec stat {} \;
find: ‘/proc/3712/task/3712/fd/9’: No such file or directory
find: ‘/proc/3712/task/3712/fdinfo/9’: No such file or directory
find: ‘/proc/3712/fd/8’: No such file or directory
find: ‘/proc/3712/fdinfo/8’: No such file or directory
  File: /opt/home/mage
  Size: 62          Blocks: 0          IO Block: 4096   directory
Device: fd00h/64768d    Inode: 134859146   Links: 2
Access: (0700/drwx------)  Uid: ( 1007/ UNKNOWN)   Gid: ( 1007/ UNKNOWN)
Access: 2020-12-29 22:08:36.192285090 +0800         #訪問時間
Modify: 2020-11-15 18:21:00.000000000 +0800
Change: 2020-12-06 15:03:05.263408864 +0800
 Birth: -
  File: /opt/home/wang
  Size: 62          Blocks: 0          IO Block: 4096   directory
Device: fd00h/64768d    Inode: 201330291   Links: 2
Access: (0700/drwx------)  Uid: ( 1008/ UNKNOWN)   Gid: ( 1008/ UNKNOWN)
Access: 2020-12-29 22:08:36.192285090 +0800     #訪問時間
Modify: 2020-11-15 18:21:05.000000000 +0800
Change: 2020-12-06 15:03:05.263408864 +0800
 Birth: -
  File: /opt/home/hc
  Size: 62          Blocks: 0          IO Block: 4096   directory
Device: fd00h/64768d    Inode: 827204      Links: 2
Access: (0700/drwx------)  Uid: ( 1011/ UNKNOWN)   Gid: ( 1011/ UNKNOWN)
Access: 2020-12-29 22:25:21.882249589 +0800    #訪問時間
Modify: 2020-12-29 22:25:09.742310375 +0800
Change: 2020-12-29 22:25:09.742310375 +0800
 Birth: -
  File: /opt/home/hc/.bash_logout
  Size: 18          Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 827205      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1011/ UNKNOWN)   Gid: ( 1011/ UNKNOWN)
Access: 2020-12-29 22:25:07.040323903 +0800     #訪問時間
Modify: 2019-11-09 00:21:40.000000000 +0800
Change: 2020-12-06 15:03:05.263408864 +0800
 Birth: -

6焊刹、查找/etc目錄下至少有一類用戶沒有執(zhí)行權(quán)限的文件

? 23:54:06-root:/date# find /etc ! -perm /111 -exec ls -l {} \;|more (說實話芽淡,題干還是似懂非懂)
-rw-r--r--. 1 root root 655 Nov  8 13:09 /etc/fstab
-rw-------. 1 root root 0 Nov  8 13:09 /etc/crypttab
-rw-r--r-- 1 root root 266 Dec 29 19:46 /etc/resolv.conf
-rw-r--r--. 1 root root 80 Nov  8 13:10 /etc/dnf/modules.d/satellite-5-client.module
......
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末锰提,一起剝皮案震驚了整個濱河市匿辩,隨后出現(xiàn)的幾起案子鸡典,更是在濱河造成了極大的恐慌源请,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件彻况,死亡現(xiàn)場離奇詭異谁尸,居然都是意外死亡,警方通過查閱死者的電腦和手機纽甘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門良蛮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人贷腕,你說我怎么就攤上這事背镇。” “怎么了泽裳?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵瞒斩,是天一觀的道長。 經(jīng)常有香客問我涮总,道長胸囱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任瀑梗,我火速辦了婚禮烹笔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘抛丽。我一直安慰自己谤职,他們只是感情好,可當我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布亿鲜。 她就那樣靜靜地躺著允蜈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上饶套,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天漩蟆,我揣著相機與錄音,去河邊找鬼妓蛮。 笑死怠李,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蛤克。 我是一名探鬼主播捺癞,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼咖耘!你這毒婦竟也來了翘簇?” 一聲冷哼從身側(cè)響起撬码,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤儿倒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后呜笑,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體夫否,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年叫胁,在試婚紗的時候發(fā)現(xiàn)自己被綠了凰慈。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡驼鹅,死狀恐怖微谓,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情输钩,我是刑警寧澤豺型,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站买乃,受9級特大地震影響姻氨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜剪验,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一肴焊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧功戚,春花似錦娶眷、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春席揽,著一層夾襖步出監(jiān)牢的瞬間顽馋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工幌羞, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留寸谜,地道東北人。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓属桦,卻偏偏與公主長得像熊痴,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子聂宾,可洞房花燭夜當晚...
    茶點故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 在進行腳本編寫的時候,有時候我們需要判斷當前的條件是否符合我們要執(zhí)行的命令纪他,這時候便可以使用if語句if語句格式:...
    5fbfc3467375閱讀 938評論 0 0
  • 1鄙煤、編寫腳本 createuser.sh,實現(xiàn)如下功能:使用一個用戶名做為參數(shù)茶袒,如果 指定參數(shù)的用戶存在梯刚,就顯示其...
    Easy_8195閱讀 333評論 3 0
  • 1、編寫腳本 createuser.sh薪寓,實現(xiàn)如下功能:使用一個用戶名做為參數(shù)亡资,如果 指定參數(shù)的用戶存在,就顯示其...
    紫火紅云閱讀 148評論 0 0
  • 1、編寫腳本 createuser.sh植康,實現(xiàn)如下功能:使用一個用戶名做為參數(shù)旷太,如果 指定參數(shù)的用戶存在,就顯示其...
    一席__N51閱讀 443評論 1 0
  • Q1:編寫腳本 createuser.sh销睁,實現(xiàn)如下功能:使用一個用戶名做為參數(shù)供璧,如果 指定參數(shù)的用戶存在,就顯示...
    丹楓_Nariss閱讀 133評論 0 0