1. 入門
why簡單性 可移植性 易開發性
who | wc -l 統計使用者個數
| 管道
指令碼開頭一般寫法 #! /bin/sh 注意盡量不要超過64個字元
重定向及管道 < > |
特殊檔案
/dev/null
exp: if grep pattern myfile > /dev/null then ... else ... fi
主要是獲得執行後的狀態,而不是結果
/dev/tty 重定向到乙個終端, 一般用來獲取人工輸入
命令跟蹤
sh -x mysh.sh
或set -x 開啟跟蹤, set +x 關閉
lang設定預設語言
lc_all 覆蓋所有lc_***的語言
locale -a 顯示所有支援的語言
2. some cmd
grep 基本的正則匹配
egrep 擴充套件的正則匹配
fgrep 固定字串匹配, 可多個
grep -f 等於 fgrep , 實際上 grep 後表示式裡沒有正則的, 就預設是-f
正則介紹
/ * . ^ $ + ? | ()
[:alpha:] 英文字符集
[.ch.] 乙個字元ch
[=e=] 等價字符集
[^aeiouy] 表示所有小寫原音字母外的
sed 命令
who |sed 's/:.*' | sort -u
sed -n '10,42p' foo.xml
sed '/foo/,/bar/ s/aaa/bbb/g' foo.xml
who | sed '/dev5/!s/pts/ppt/'
sed '/^#/d' t.sh 刪注釋
cut
ls -l | cut -c 1-10
cut -d : -f 1,3 /etc/passwd
awkawk 'nf>0 ' t.sh
awk -f: -v 'ofs=**' '' /etc/passwd
Shell指令碼學習指南 入門
關於指令碼第一行的 符號注意的幾點 不是必須存在,但存在比不存在好。最好跟上全路徑,長度不易太長最好不要超過64個字元。shell的基本元素 命令與引數 三種基本命令 內建命令,shell函式,外部命令 如 usr bin,usr local bin 變數 變數名以字母或下劃線開頭,長度無限制,內容...
shell指令碼學習指南 學習筆記 1 6章
grep 找資料 sed 替換輸資料 cut 格式化文件 join 連線,連線前排序 sort 排序資料 uniq 資料排重 fmt 格式化文字 awk 重組資料,文字 wc 計算行數l,位元組數c,字數w lp 列印 tr 轉義字元 readonly 設為唯讀 export 匯入當前環境 unse...
《shell指令碼學習指南》學習筆記之入門 一
這個部落格是我結合書上所看以及 大神總結所得,寫到自己部落格上,只是為了加深的印象,更加方便的學習。shell指令碼能夠輕易處理檔案與目錄之類的物件,而且是各unix系統之間經過posix標準化的通用的功能,因此shell指令碼只要 用心寫 一次,即可應用到很多系統上,因此之所以要使用shell指令...