歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> Linux學習筆記(三)——Shell腳本基礎總結

Linux學習筆記(三)——Shell腳本基礎總結

日期:2017/2/28 15:54:17   编辑:SHELL編程

1. vi編輯器快捷鍵備忘
[Ctrl]+[ud] 向上/下移動半頁
n<space> 右移n個字符
H/M/L 移動到屏幕最上方/中央/最下方一行
u [Ctrl]+r 復原和重做
.(點) 重復前一個動作
:e! 將文件還原到最原始狀態
[Ctrl]+v 塊選擇
2. Bash Shell基礎
env 環境變量
set 環境變量和其他變量
export 使變量變成環境變量,在子程序中生效
read -p 後接提示字符, -t 等待秒數
declare 聲明變量的屬性
-a 定義為數組
-i 定義為整數數字
-x 同export,變成環境變量
-r 只讀屬性
history 查看歷史命令
/etc/issue 終端接口字符串(使用man issue 或 man mingetty 查看特殊代碼的意思
/etc/motd 用戶登錄後獲取消息
系統設置值:
/etc/sysconfig/i18n 語系數據
/etc/profile PATH、USER、MAIL、HOSTNAME、HISTSIZE、umask等重要變量,規定讀取其他文件,如/etc/profile.d和/etc/inputrc等
登陸Shell:
用戶登錄Linux系統時所取得的那個shell,對應於/etc/passwd裡面的最後一項數據。比如,我想讓用戶atom登陸後直接打開vi,則在/etc/passwd裡atom對應的那一行最後的一項內容改為/usr/bin/vi就行了。
3. Linux常用文本處理工具總結
a) cut –d ‘分隔符’ –f fields,取出以“分隔符”分割的第fields段
cut –c 字段范圍 以字符為單位取出固定的字符范圍
b) cat /etc/passwd | sort –t ‘:’ –k 3 –n
-t,分隔符,默認是tab鍵;-k,第幾個字段;-n,使用“純數字”排序
c) 其他,wc [-lwm]; uniq [-ic]; tee [-a],雙向重定向
d) 字符串轉換命令:tr, col, join(合並兩個文件中相同的數據),paste(直接將兩行貼在一起), expand(將[tab]轉成空格鍵)
e) split 拆分文件
f) -(減號) 某些命令需要用到文件名稱來處理是,stdin與stdout可以利用減號“-”來替代。
4. awk學習總結
awk是“以行為單位處理”,而“以字段為最小的處理單位”。
變量名稱 代表的含義
NF 每一行($0)擁有的字段總數
NR 當前處理的是“第幾行”數據
FS 分隔符,默認為空格鍵
可以使用BEGIN關鍵詞預先設置awk的變量,如:
cat /etc/passwd | awk 'BEGIN{FS=":"} $3 < 10 {print $1 "\t" $3}'
說明:在{}的所有操作,如需多個命令,可用分號(;)分割,或者直接以[enter]按鍵來隔開每個命令。
5. Shell腳本的追蹤與調試
sh [-nvx] scripts.sh
-n 不執行腳本,僅查詢語法問題
-v 在執行腳本前,先將腳本的內容輸出到屏幕上
-x 將使用的腳本內容顯示到屏幕上,便於調試

相關閱讀:

Linux學習筆記(一)——認識linux和主機 http://www.linuxidc.com/Linux/2012-03/56917.htm
Linux學習筆記(二)——文件、目錄與磁盤格式 http://www.linuxidc.com/Linux/2012-03/56918.htm
Linux學習筆記(三)——Shell腳本基礎總結 http://www.linuxidc.com/Linux/2012-03/56919.htm
Linux學習筆記(四)——Linux用戶管理 http://www.linuxidc.com/Linux/2012-03/56920.htm Linux學習筆記(五)——Linux系統管理 http://www.linuxidc.com/Linux/2012-03/56921.htm
Copyright © Linux教程網 All Rights Reserved