常見的命令詳解:1.grep 命令詳解
定義:grep命令是我們常用的乙個強大的文字搜尋命令
格式:grep [引數] [關鍵字] 《檔名》
引數: -c: 輸出匹配到的關鍵字的引數
-n: 顯示匹配行和行號
-v: 顯示不包含匹配檔案的所有內容
-i:不區分大小寫
精確定位錯誤**:grep -nr [錯誤關鍵字] *
2. sed 命令詳解格式:sed [引數] '《匹配條件》 [動作]' [檔名]
2.引數為 -i :表示對檔案進行編輯
動作詳解:
-a 在匹配到的內容下一行增加內容
-i 在匹配到的內容上一行增加內容
-d 刪除匹配到的內容
-s 替換匹配到的內容
替換:命令格式: sed -i [替換格式] [檔名]
注意:替換命令的寫法:'s###' ---> 's#原內容##' ---> 's#原內容#替換後內容#'
增加:2.1.在指定行號的下一行增加內容
增加多行:sed -i '1,3a\增加內容' 檔名
2.2.在指定行號的當前行增加內容
指定一行增加:sed -i '行號i\增加的內容' 檔名
指定多行增加: sed -i '1,3a\增加內容' 檔名
刪除:2.1.指定行號刪除: sed -i '行號d' 檔名
2.2刪除多行: sed -i '1,3d' 檔名
3.awak命令詳解格式:awk [引數] '[ 動作]' [檔名]
常見引數: -f 指定行的分隔符
常見動作: print 顯示內容
$0 顯示當前行所有內容
$n 顯示當前行的第n列內容,如果存在多個$n,它們之間使用逗號(,)隔開
常見內建變數: filename 當前輸入檔案的檔名,該變數是唯讀的
nr 指定顯示行的行號
nf 輸出 最後一列的內容
ofs 輸出格式的列分隔符,預設是空格
fs 輸入檔案的列分融符,預設是連續的空格和tab
4. find 命令詳解格式:find [路徑] [引數] [關鍵字]
引數: -name 按照檔名查詢檔案。
-perm 按照檔案許可權來查詢檔案。
-user 按照檔案屬主來查詢檔案。
-group 按照檔案所屬的組來查詢檔案。
-type 查詢某一型別的檔案,(d--目錄,f--普通檔案)
流程控制:單分支if語句
(單一條件,只有乙個輸出)
#!/bin/bash
# 單if語句的使用場景
if [ "$1" == "nan" ]
then
echo "您的性別是 男"
fi
雙分支if語句
(乙個條件,兩種結果)
#!/bin/bash
# 單if語句的使用場景
if [ "$1" == "nan" ]
then
echo "您的性別是 男"
else
echo "您的性別是 女"
fi
多分支if語句
(n個條件,n+1個結果)
#!/bin/bash
# 單if語句的使用場景
if [ "$1" == "nan" ]
then
echo "您的性別是 男"
elif [ "$1" == "nv" ]
then
echo "您的性別是 女"
else
echo "您的性別,我不知道"
fi
case 選擇語句
(在多if語句的基礎上對指令碼進行公升級)
# cat case.sh
#!/bin/bash
# case語句使用場景
case "$1" in
"start")
echo "服務啟動中..."
;;"stop")
echo "服務關閉中..."
;;"restart")
echo "服務重啟中..."
;;*)
echo "$0 指令碼的使用方式: $0 [ start | stop | restart ]"
;;esac
for 迴圈語句
(迴圈指定的所有元素,迴圈完畢之後就退出)
#!/bin/bash
# for語句的使用示例
for i in $(ls /root)
do echo "$"
done
while 迴圈語句
(只要條件滿足,就一直迴圈下去)
#!/bin/bash
# while的示例
a=1while [ "$" -lt 5 ]
do echo "$"
a=$((a+1))-->相當於a+=1
done
until 迴圈語句:
(只要條件不滿足,就一直迴圈下去)
#!/bin/bash
# until的示例
a=1until [ "$" -eq 5 ]
do echo "$"
a=$((a+1))
done
shell裡邊函式的基礎知識簡單函式:
定義函式:
函式名()
# 函式主框架
if [ $# -eq 1 ]--->引數數量
then
case "$" in
start)
echo "服務啟動中..."
;;stop)
echo "服務關閉中..."
;;restart)
echo "服務重啟中..."
;;*) -->其他情況
usage
;;esac
else
usage --->幫助資訊
fi
shell程式設計《二》
一 if語句 if expressino then code block elif expression then code block else code block fi fi 比較整 數a 和b是否 相等 if a b 也 可 用 eq 判斷整 數a是否 大於整數 b if a gt b 比較...
shell程式設計二
同makefile一樣,符號 被用作注釋,也就說shell在解析該指令碼時會忽略這一行,但是 例外。如果需要將多個命令一起執行,可以將這些命令放在同一行,使用分號分割即可,例如 bin bash date whodate命令首先被執行,然後是who命令。通常我們需要顯示一些資訊,可以使用echo命令...
shell程式設計 (二)
雜亂模組 上一次的結果碼 對指令碼進行檢測語法錯誤 bash n shell.sh 指令碼 bash x shell.sh 指令碼,單步執行 date s 顯示當前秒數 timedays 提前退出指令碼 exit stat 獲取檔案屬性 一 shell中實現算術運算 a 2 b 5 1 let a ...