其他程序
- 時間和日期 -date / cal
- 錄制操作腳本 -script。
- 給用戶發(fā)送消息 -mesg / write / wall mail .
文件系統(tǒng)
文件和路徑
- 命名規(guī)則:文件名的最大長度與文件系統(tǒng)類型有關(guān)匿乃,一般情況下赁还,文件名不應(yīng)該超過255個字符怔毛,雖然絕大多數(shù)的字符都可以用于文件名,但是最好使用英文大小寫字母、數(shù)字椒惨、下劃線、點(diǎn)這樣的符號潮罪。文件名中雖然可以使用空格康谆,但應(yīng)該盡可能避免使用空格,否則在輸入文件名時需要用將文件名放在雙引號中或者通過\對空格進(jìn)行轉(zhuǎn)義嫉到。
- 擴(kuò)展名:在Linux系統(tǒng)下文件的擴(kuò)展名是可選的沃暗,但是使用擴(kuò)展名有助于對文件內(nèi)容的理解。有些應(yīng)用程序要通過擴(kuò)展名來識別文件屯碴,但是更多的應(yīng)用程序并不依賴文件的擴(kuò)展名描睦,就像file命令在識別文件時并不是依據(jù)擴(kuò)展名來判定文件的類型。
- 隱藏文件:以點(diǎn)開頭的文件在Linux系統(tǒng)中是隱藏文件(不可見文件)导而。
目錄結(jié)構(gòu)
- / bin 基本命令的二進(jìn)制文件
- / boot -引導(dǎo)加載程序的靜態(tài)文件
- /dev -設(shè)備文件
- /etc -配置文件
- /home - 普通用戶主目錄的父目錄
- /lib 共享庫文件
- /lib64 共享64位庫文件
- /lost+found - 存放未鏈接文件
- /media - 自動識別設(shè)備的掛載目錄忱叭。
- /mnt - 臨時掛載文件系統(tǒng)的掛載點(diǎn)隔崎。
- /opt - 可選插件軟件包安裝位置。
- /proc - 內(nèi)核和進(jìn)程信息韵丑。
- /root - 超級管理員用戶主目錄爵卒。
- /run - 存放系統(tǒng)運(yùn)行時需要的東西。
- /sbin - 超級用戶的二進(jìn)制文件撵彻。
- /sys - 設(shè)備的偽文件系統(tǒng)钓株。
- /tmp - 臨時文件夾。
- /usr - 用戶應(yīng)用目錄
- /var - 變量數(shù)據(jù)目錄陌僵。
訪問權(quán)限
- chmod - 改變文件模式比特
長格式查看目錄或文件時顯示結(jié)果及其對應(yīng)權(quán)限的數(shù)值:755(rwx - rx-rx) 644(rw - r-r) 775(rwx - rwx -rx) - chown - 改變文件所有者
磁盤管理
- 列出文件系統(tǒng)的磁盤使用狀況 - df轴合。
- 磁盤分區(qū)表操作 - fdisk。
- 格式化文件系統(tǒng) - mkfs碗短。
- 文件系統(tǒng)檢查 - fsck受葛。
- 掛載/卸載 - mount / umount。
vim編輯器
- 啟動vim偎谁∽芴玻可以通過vi或vim命令來啟動vim,啟動時可以指定文件名來打開一個文件巡雨,如果沒有指定文件名闰渔,也可以在保存的時候指定文件名。
- 命令模式铐望、編輯模式和末行模式:啟動vim進(jìn)入的是命令模式(也稱為Normal模式)冈涧,在命令模式下輸入英文字母i會進(jìn)入編輯模式(Insert模式),屏幕下方出現(xiàn)-- INSERT --提示蝌以;在編輯模式下按下Esc會回到命令模式炕舵,此時如果輸入英文:會進(jìn)入末行模式,在末行模式下輸入q!可以在不保存當(dāng)前工作的情況下強(qiáng)行退出vim跟畅;在命令模式下輸入v會進(jìn)入可視模式(Visual模式)咽筋,可以用光標(biāo)選擇一個區(qū)域再完成對應(yīng)的操作。
- 保存和退出vim:在命令模式下輸入: 進(jìn)入末行模式徊件,輸入wq可以實(shí)現(xiàn)保存退出奸攻;如果想放棄編輯的內(nèi)容輸入q!強(qiáng)行退出,這一點(diǎn)剛才已經(jīng)提到過了虱痕;在命令模式下也可以直接輸入ZZ實(shí)現(xiàn)保存退出睹耐。如果只想保存文件不退出,那么可以在末行模式下輸入w部翘;可以在w后面輸入空格再指定要保存的文件名硝训。
- 光標(biāo)操作
- 在命令模式下可以通過h、j、k窖梁、l來控制光標(biāo)向左赘风、下、上纵刘、右的方向移動邀窃,可以在字母前輸入數(shù)字來表示移動的距離,例如:10h表示向左移動10個字符假哎。
- 在命令模式下可以通過Ctrl+y和Ctrl+e來實(shí)現(xiàn)向上瞬捕、向下滾動一行文本的操作,可以通過Ctrl+f和Ctrl+b來實(shí)現(xiàn)向前和向后翻頁的操作舵抹。
- 在命令模式下可以通過輸入英文字母G將光標(biāo)移到文件的末尾肪虎,可以通過gg將光標(biāo)移到文件的開始,也可以通過在G前輸入數(shù)字來將光標(biāo)移動到指定的行惧蛹。
- 文本操作
- 在命令模式下可以用dd來刪除整行笋轨;可以在dd前加數(shù)字來指定刪除的行數(shù);可以用d$來實(shí)現(xiàn)刪除從光標(biāo)處刪到行尾的操作赊淑,也可以通過d0來實(shí)現(xiàn)從光標(biāo)處刪到行首的操作;如果想刪除一個單詞仅讽,可以使用dw陶缺;如果要刪除全文,可以在輸入:%d(其中:用來從命令模式進(jìn)入末行模式)洁灵。
- 復(fù)制和黏貼:在命令模式下可以用yy來復(fù)制整行饱岸;可以在yy前加數(shù)字來指定復(fù)制的行數(shù);可以通過p將復(fù)制的內(nèi)容粘貼到光標(biāo)所在的地方
- 撤銷和恢復(fù):在命令模式下輸入u可以撤銷之前的操作徽千;通過Ctrl+r可以恢復(fù)被撤銷的操作苫费。
- 對內(nèi)容進(jìn)行排序:在命令模式下輸入%!sort
- 查找和替換
- 查找操作需要輸入/進(jìn)入末行模式并提供正則表達(dá)式來匹配與之對應(yīng)的內(nèi)容,例如:/doc.*.双抽,輸入n來向前搜索百框,也可以輸入N來向后搜索。
- 替換操作需要輸入:進(jìn)入末行模式并指定搜索的范圍牍汹、正則表達(dá)式以及替換后的內(nèi)容和匹配選項铐维,例如::1,$s/doc.*/hello/gice,其中:
- g - global:全局匹配
- i - ignore case:忽略大小寫匹配慎菲。
- c - confirm:替換時需要確認(rèn)嫁蛇。
- e - error:忽略錯誤。
- 參數(shù)設(shè)定:在輸入:進(jìn)入末行模式后可以對vim進(jìn)行設(shè)定露该。
- 設(shè)置Tab鍵的空格數(shù):set ts=4
- 設(shè)置顯示/不顯示行號:set nu / set nonu
- 設(shè)置啟用/關(guān)閉高亮語法:syntax on / syntax off
- 設(shè)置顯示標(biāo)尺(光標(biāo)所在的行和列): set ruler
- 設(shè)置啟用/關(guān)閉搜索結(jié)果高亮:set hls / set nohls
- 高級技巧
- 比較多個文件 vim -d 文件1 文件2
- 打開多個文件 vim 文件1 文件2
啟動vim后只有一個窗口顯示的是文件1睬棚,可以在末行模式中輸入ls查看到打開的2個文件,也可以在末行模式中輸入b <num>來顯示另一個文件,例如可以用:b 2將文件2顯示出來 - 拆分和切換窗口抑党。
可以在末行模式中輸入sp或vs來實(shí)現(xiàn)對窗口的水平或垂直拆分包警,這樣我們就可以同時打開多個編輯窗口,通過按兩次Ctrl+w就可以實(shí)現(xiàn)編輯窗口的切換新荤,在一個窗口中執(zhí)行退出操作只會關(guān)閉對應(yīng)的窗口揽趾,其他的窗口繼續(xù)保留。 - 映射快捷鍵:在vim下可以將一些常用操作映射為快捷鍵來提升工作效率苛骨。
- 在命令模式下輸入F4執(zhí)行從第一行開始刪除10000行代碼的操作篱瞎。 : map <F4> gg10000dd
- 在編輯模式下輸入main直接補(bǔ)全為if name == 'main':。 :inoremap main if name == 'main':
說明:上面例子2的inoremap中的i表示映射的鍵在編輯模式使用痒芝, nore表示不要遞歸俐筋,這一點(diǎn)非常重要,否則如果鍵對應(yīng)的內(nèi)容中又出現(xiàn)鍵本身严衬,就會引發(fā)遞歸(相當(dāng)于進(jìn)入了死循環(huán))澄者。如果希望映射的快捷鍵每次啟動vim時都能生效,需要將映射寫到用戶主目錄下的.vimrc文件中请琳。
- 錄制宏
- 在命令模式下輸入qa開始錄制宏(其中a是寄存器的名字粱挡,也可以是其他英文字母或0-9的數(shù)字。
- 執(zhí)行你的操作(光標(biāo)操作俄精、編輯操作等)询筏,這些操作都會被錄制下來。
- 如果錄制的操作已經(jīng)完成了竖慧,按q結(jié)束錄制
- 通過@a(a是剛才使用的寄存器的名字)播放宏嫌套,如果要多次執(zhí)行宏可以在前面加數(shù)字,例如100@a表示將宏播放100次