Shell是什么
Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 的橋梁。Shell 既是一種命令語言,又是一種程序設計語言。Shell 是指一種應用程序,這個應用程序提供了一個界面,用戶通過這個界面訪問操作系統內核的服務。Ken Thompson 的 sh 是第一種 Unix Shell,Windows Explorer 是一個典型的圖形界面 Shell。
查看Linux支持的Shell:vi /etc/shells
echo輸出命令
echo [選項] [輸出內容]
第一個腳本:
vi hellol.sh
輸入以下命令:
#!/bin/bash
#wuwuyong
echo "hello world"
腳本執行:
chmod 755 hello.sh(賦予權限) ./hello.sh
或Bash hello.sh
歷史命令
history [選項] [歷史命令保存文件]
選項:-c(清空歷史命令) -w(把緩存中的歷史命令寫入歷史命令保存文件)
別名和快捷鍵
別名:alias 別名=‘原命令’ (設定命令別名)
alias(查詢命令別名)
讓別名永久生效:vi /root/.bashrc 加上alias 別名=‘原命令’
刪除別名:unalias 別名
輸入輸出重定向
輸入重定向:wc [選項] [文件名]
選項:-c 統計字節數;-w 統計單詞數;-l統計行數
把文件作為命令的輸入:命令<文件
多命令順序執行與管道符
管道符:命令1 | 命令2(命令1的正確輸出作為命令2的操作對象)
grep [選項] “搜索內容” 文件名 : 顯示文件中包含搜索內容的行
選項:-i(忽略大小寫) ;-n(輸出行號);-v(方向查找)
通配符和其他特殊符號
用戶自定義變量
變量的定義:變量名=變量
變量調用:echo $name
變量查看:set
變量刪除:unset name
環境變量
設置環境變量:export 變量名=變量值
查詢變量:env
刪除變量:unset 變量名
位置參數變量
比如一個sh文件中有如下命令:
echo $0
echo $1
echo $2
執行.sh 11 22的結果是.sh 11 22
預定義變量
接收鍵盤輸入
數值運算與運算符
declare聲明變量類型
運算符:
變量測試與內容替換
環境變量配置文件
正則表達式
正則表達式與通配符:
基礎正則表達式:
字符截取命令
printf命令
awk命令
sed命令
字符處理命令
條件判斷
按照文件類型進行判斷
流程控制 if語句
case語句