Linux學習筆記5

2021-09-29 18:01:03 字數 2199 閱讀 1188

day5

1.shell指令碼(.sh字尾)

①#! /bin/bash(指令碼宣告)

②#******(指令碼注釋)

③指令碼命令

2.shell功能

①接收使用者的引數

$0–當前指令碼名稱

$#–共有幾個引數

$*–所有位置的引數值

$?–上一次命令的執行返回值

$n–接收到的第n和引數值

②判斷使用者的引數

條件測試語句執行格式:[ 條件表示式 ]

分為檔案測試語句、邏輯測試語句、整數值比較語句、字串比較語句四種

a.檔案測試所用的引數

運算子作用

-d測試檔案是否為目錄型別

-e測試檔案是否存在

-f判斷是否為一般檔案

-r測試當前使用者是否有許可權讀取

-w測試當前使用者是否有許可權寫入

-x測試當前使用者是否有許可權執行

b.邏輯「與」–&&,表示當前面的命令執行成功後才會執行它後面的命令;

邏輯「或」–||,表示當前面的命令執行失敗後才會執行它後面的命令;

邏輯「非」–!,表示把條件測試中的判斷結果取相反值;

eg:[ ! $user = root ] && echo 「user」 || echo 「root」

c.可用的整數比較運算子

運算子作用

-eq(equal)

是否等於

-ne是否不等於

-gt(great than)

是否大於

-lt(less than)

是否小於

-le是否等於或小於

-ge是否大於或等於

eg:[free -m | grep mem: | awk ''-lt 1024 ] && echo 「buzu」

d.常見的字串比較運算子

運算子作用

=比較字串內容是否相同

!=比較字串內容是否不同

-z判斷字串內容是否為空

3.if條件測試語句

①單支格式:if 條件測試操作

then 命令序列

fi②雙支

格式:if 條件測試操作

then 命令序列1

else 命令序列2

fi③多支

格式:if 條件測試操作1

then 命令序列1

elif 條件測試操作2

then 命令序列2

else

命令序列3

fi(ping -c 3 -i 0.2 -w 3 $1 &> /dev/null;-c 規定嘗試次數,-i定義傳送間隔,-w定義等待超時時間)

(read -p 「enter」 grade;read是用來讀取使用者輸入資訊的命令能夠把接收到的使用者輸入資訊賦值給後面的指定變數,-p引數用於向使用者顯示一定的提示資訊)

4.for條件迴圈語句

格式:for 變數名 in 取值列表

do命令序列

Linux學習筆記(5) 使用者管理

使用者 使用作業系統的人 使用者組 具有相同系統許可權的一組使用者使用者和使用者組 etc group 儲存當前系統中所有使用者組資訊cat etc group 檢視資訊 每行都有4段組成 group x 123 abc,def,xyz 組名 組密碼佔位符 組編號 組中使用者列表未被使用的最小組號分...

Linux學習筆記5 檔案

在 linux 中,所有的東西都被當成檔案 檔案許可權的第乙個字母代表檔案的型別 b 塊裝置檔案 c 字元裝置檔案 l鏈結檔案 d 目錄 一般檔案 許可權型別 r w x 擁有者u 組g 其他使用者o 執行 x 權力 沒有這個權利,無法進入目錄,建新檔案,以及查詢目錄下檔案和內容的許可權。讀權利 讀...

Linux學習筆記 5 鏈結命令ln

把原檔案生成乙個鏈結的目標檔案,分為軟連線和硬鏈結。具有相同的i節點和儲存block塊。當使用者去搜尋乙個檔案時,會先去查檔案索引表,找到儲存位置,然後再去硬碟裡這些位置的block塊拿出資料塊返回給使用者。硬鏈結的檔案具有相同的i節點號,那麼在檔案索引表中找到的就是同一行,記錄的儲存位置也必然是一...