● sh
以子程序執行bash
(執行後變數不會存在)
-n : 讀取指令,但是不執行
-v : 讀取指令時,將指令同時輸出到螢幕上
-x : 在執行程式時,將指令和參數輸出到螢幕上
e.g. sh sh01.sh
● man
指令查詢及說明
左上角的代號:
1. 使用者在shell環境中可用的指令
2. 系統核心可以呼叫的函式與工具
3. 一些常用的函數(function)與函式庫(library),大部分為C的函式庫(libc)
4. 裝置檔案的說明,通常在/dev下的檔案
5. 設定檔或者是某些檔案的格式
6. 遊戲(games)
7. 慣例與協定等,例如Linux檔案系統、網路協定、ASCII code等等的說明
8. 系統管理員可用的管理指令
9. 跟kernel有關的文件
分析、搜尋字串
-c : 計算找到"字串"的次數
-r : 遞迴讀取所有資料夾下的檔案
-v : 反向選擇,即沒有包含"字串"
● alias
替指令命名別名
e.g. alias lm='ls -al'
● history
列出使用過的指令
(~/.bash_history)
● mkdir
建立新目錄
-p : 建立多層目錄(遞迴建立)
● rmdir
刪除空目錄
-p : 連同上層空目錄一起刪除
● unset
取消變數或函式
-v : 取消變數
-f : 取消函式
● set
沒有參數時,顯示所有 shell 變數
有參數時,設定shell的屬性
● export
自定變數轉換成環境變數
e.g. export PATH
● read
讀取鍵盤輸入
-p : 後面接提示字元
-t : 後面接等待秒數
e.g.
read -p "input:" input0#input0 = 鍵盤的輸入
● touch
修改檔案時間或建置新檔
當檔案不存在,則建立新檔案
當檔案存在,預設將三個時間(access time/ modification time/ status time)都更新為目前時間
-a : 只更改access time
-c: 只修改檔案的時間
● last
顯示最近登入的使用者
● chmod
更改權限
rwx : 讀、寫、執行
ugoa : user, group, other, all
e.g. chmod 770 file1
e.g. chmod u=rwx,go=rx file2
e.g. chmod a+w file3● time(1)
計算指令時間
e.g. time [options] command [arguments...]
● time(2)
得到時間(秒數計算)
● Ctrl + C
終止目前命令
● Ctrl + D
輸入結束(EOF)
● Ctrl + S
暫停螢幕輸出
● Ctrl + Q
恢復螢幕輸出
● Ctrl + Z
暫停目前的指令
● Ctrl + M
Enter
● Ctrl +U
將整列命令刪除
==============================
● ` `內的指令會先被執行
==============================
語法
● if [ ]; then
##########
elif [ ]; then
##########
else
##########fi
● case $變數 in
"變數內容")
;; #結尾需兩個
"變數內容")
;;
*)
;;
esac
● function fname() {
}
● while [ ]
do
####
done
● until [ ]
do
####
done
● for var in CON1 CON2...
do
####
done
● for (( 初始值; 限制值; 執行步階 ))
do
####
done
==============================
● $0 : 程式本身
● $1 : 程式的第一個參數
● $# : 程式的參數個數
● $@ : 代表「 "$1" "$2" "$3"」 所有參數
● $? : 前一個程式的回傳值
==============================
檔案:
● /etc/shell : 定義可以用的shell
●
參考:
鳥哥的Linux 私房菜
manual page
沒有留言:
張貼留言