每天乙個shell指令碼(3)

2021-09-18 07:31:16 字數 1635 閱讀 3684

每天乙個shell指令碼(3)

題目:

請按照這樣的日期格式(***x-xx-xx)每日在/test目錄下生成乙個檔案(判斷目錄是否存在),例如今天生成的檔案為 2018-6-11.log, 並且把磁碟的使用情況寫到到這個檔案中)

需要知識:

日期date函式

獲取 yyyy-mm-dd 日期格式

`date "+%y-%m-%d"`
``符號包裹,代表這是一句linux命令,不是字元。

%y-%m-%d %h:%i: %s分別代表完整的年-月-日 時:分:秒
使用date函式把日期轉化為時間戳:

`date +%s -d "2019-04-16"`
判斷目錄

shell中判斷語句 if,格式為:

#-d代表是否目錄 !代表取反 注意兩者中間要有空格 

if [ ! -d *** ]

then #後執行為真的邏輯

mkdir ***

fi

生成檔案

直接使用linux命令touch生成即可:

touch a.log
檔案寫入

echo 'aaa' > a.log  # 清空原有,寫入

echo 'bbb' >> a.log # 追加寫入

檢視磁碟情況:

# 檢視伺服器分割槽整體情況

df -h

#遍歷檢視該目錄下所有目錄大小

du -h dirname

#計算該目錄大小

du -sh dirname

# 檢視制定目錄下每個目錄大小

# 不寫目錄名稱則檢視當前目錄

du --max-depth=1 -h [dirname]

# 檢視指定檔案大小

du -b filename

生成檔案

直接使用linux命令touch生成即可:

touch a.log
檔案寫入

echo 'aaa' > a.log  # 清空原有,寫入

echo 'bbb' >> a.log # 追加寫入

檢視磁碟情況:

# 檢視伺服器分割槽整體情況

df -h

#遍歷檢視該目錄下所有目錄大小

du -h dirname

#計算該目錄大小

du -sh dirname

# 檢視制定目錄下每個目錄大小

# 不寫目錄名稱則檢視當前目錄

du --max-depth=1 -h [dirname]

# 檢視指定檔案大小

du -b filename

shell指令碼練習 每天乙個shell指令碼 7

我的部落格都是依照自己淺薄的現有知識去寫的,好多時候寫完了部落格,去查詢答案,會發現很多更剪短更效率更好的答案。寫部落格是激勵我自己能堅持下去,讓我的頭腦不去懈怠,望共勉。題目 write a script five dirs.sh that does these tasks make a dire...

每天乙個shell指令碼(4)

習題 將下面這句話中字元數在6以內的單詞列印出來 bash also interprets a number of multi character options 涉及的知識點 迴圈遍歷該字串成每個字元,注 shell中的迴圈的跳出也是用continue和break。shell中的for迴圈規則 1...

shell基礎練習 每天乙個shell指令碼 8

我的部落格都是依照自己淺薄的現有知識去寫的,好多時候寫完了部落格,去查詢答案,會發現很多更剪短更效率更好的答案。寫部落格是激勵我自己能堅持下去,讓我的頭腦不去懈怠,望共勉。題目 編寫指令碼,利用變數random生成10個隨機數字,輸出這個10數字,並顯示其中的最大值和最小值 知識點 random變數...