<h2 id='0'>目錄</h2>shell
1 優化配置篇編程
1.1 優化配置篇之安裝vimbash
<h6 id='1.1'>1.1 優化配置篇之打開文件顯示行數</h6> 設置行號,每次打開都顯示行號 修改vi ~/.vimrc 文件,添加:set number
<h6 id='1.2'>1.2 優化配置篇之安裝vim</h6> sudo apt-get remove vim-common(該命令能夠不執行)
sudo apt-get install vim
<h6 id='1.100'>1.100 優化配置篇之總結腳本</h6> ```shell #!/usr/bin/env bash
echo 'set number' >> ~/.vimrc
sudo apt-get remove vim-common sudo apt-get install vim
<h6 id='2'>2 Linux編程vi或vim高效率小技巧</h6> - 移動光標 h,j,k,l 上,下,左,右 ctrl-e 移動頁面 ctrl-f 上翻一頁 ctrl-b 下翻一頁 ctrl-u 上翻半頁 ctrl-d 下翻半頁 w 跳到下一個字首,按標點或單詞分割 W 跳到下一個字首,長跳,如end-of-line被認爲是一個字 e 跳到下一個字尾 E 跳到下一個字尾,長跳 b 跳到上一個字 B 跳到上一個字,長跳 0 跳至行首,無論有無縮進,就是跳到第0個字符 ^ 跳至行首的第一個字符 $ 跳至行尾 gg 跳至文首 G 調至文尾 5gg/5G 調至第5行 \* 查找光標所在處的單詞,向下查找(\爲反轉義) \# 查找光標所在處的單詞,向上查找(\爲反轉義) - 刪除複製 dd 刪除光標所在行 dw 刪除一個字(word) - 插入模式 i 從當前光標處進入插入模式 I 進入插入模式,並置光標於行首 a 追加模式,置光標於當前光標以後 A 追加模式,置光標於行末 o 在當前行之下新加一行,並進入插入模式 O 在當前行之上新加一行,並進入插入模式 Esc 退出插入模式 - 退出編輯器 :w 將緩衝區寫入文件,即保存修改 :wq 保存修改並退出 :x 保存修改並退出 :q 退出,若是對緩衝區進行過修改,則會提示 :q! 強制退出,放棄修改 - 查找替換 /pattern 向後搜索字符串pattern ?pattern 向前搜索字符串pattern "\c" 忽略大小寫 "\C" 大小寫敏感 n 下一個匹配(若是是/搜索,則是向下的下一個,?搜索則是向上的下一個) N 上一個匹配(同上) :%s/old/new/g 搜索整個文件,將全部的old替換爲new :%s/old/new/gc 搜索整個文件,將全部的old替換爲new,每次都要你確認是否替換 <h6 id='3.1'>3.1 Linux高效高頻之輸入命令的經常使用命令 </h6> - 移動相關 Ctrl + a-- 跳到行首 Ctrl + e-- 跳到行尾 - 刪除相關 Ctrl + d-- 向右刪除一個字符 Ctrl + h-- 向左刪除一個字符 Ctrl + u-- 刪除當前位置字符至行首 Ctrl + k-- 刪除當前位置字符至行尾 Ctrl + w-- 刪除從光標到當前單詞開頭 - 其餘 Ctrl + y-- 插入最近刪除的單詞 Ctrl + c-- 終止操做 Ctrl + d-- 當前操做轉到後臺 Ctrl + l-- 清屏 Ctrl + r-- 歷史搜索 <h6 id='3.2'>3.2 Linux高效高頻之文件或目錄相關的經常使用命令 </h6>
cd - 回到上次操做的目錄 du -sh 查看當前目錄總共佔的容量。而不單獨列出各子項佔用的容量 du -lh --max-depth=1 查看當前目錄下一級子文件和子目錄佔用的磁盤容量 du -ah --max-depth=1 a表示顯示目錄下全部的文件和文件夾(不含子目錄),h表示以人類能看懂的方式,max-depth表示目錄的深度
<h6 id='4'>4 Linux中shell編程技巧與注意事項 </h6> <h6 id='4.1'>4.1 Linux中shell編程技巧 </h6> ```SHELL 技巧一:經過花括號定義函數的方式進行大區域註釋,其餘地方則不調用此函數 參數 $$ Shell自己的PID(ProcessID) $! Shell最後運行的後臺Process的PID $? 最後運行的命令的結束代碼(返回值) $- 使用Set命令設定的Flag一覽 $* 全部參數列表。如"$*"用「"」括起來的狀況、以"$1 $2 … $n"的形式輸出全部參數。 $@ 全部參數列表。如"$@"用「"」括起來的狀況、以"$1" "$2" … "$n" 的形式輸出全部參數。 $# 添加到Shell的參數個數 $0 Shell自己的文件名
<h6 id='4.2'>4.2 Linux中shell編程注意事項 </h6>
函數中的變量須要使用local定義爲局部變量,不然全局會相互影響,shell中的變量默認是全局變量 函數的調用,不該互相影響,設計時作好隔離性