Linux基礎命令
目錄:
- /dev 存放硬件相關的文件
- /etc 存放配置文件的目錄
- /bin 存放普通用戶命令的目錄
- /sbin 存放管理員root可以執行的命令
- /home 存放普通用戶的家目錄(宿主目錄)
- /root 管理員的家目錄
- /media 存放多媒體資料的目錄
系統常用命令
- uname -r 查看內核版本
- ifconfig 查看IP地址
- setup 更改IP地址
- cat /proc/cpuinfo 查看CPU信息
- cat /proc/meminfo 查看內存信息
- shutdown 或 init 0 關機
- reboot 或 init 6 重啟
- tab 補齊命令或文件名等
- \ 強制換行符
- Ctrl+u 光標處清空至行首
- Ctrl +k 光標處清空至行尾
- Ctrl +l 清屏
- Ctrl+c 強制終止當前的程序
- help 查看內部命令的幫助信息
- --help 查看外部命令的幫助信息
- man 查看絕大多數命令的幫助信息
基本命令
- mkdir 創建目錄
- -p 遞歸創建
- touch 創建文件 刷新時間戳
- pwd 查看當前所在的目錄
- cd 切換目錄
- ~當前用戶的家目錄
- . 當前目錄
- .. 上一級目錄
- -之前所在目錄
- !$ 調用上一條命令的參數
- 相對路徑:以當前目錄為起點
- 絕對路徑:以根目錄為起點
- ls 查看當前目錄的內容
- -l 查看詳細信息
- -a 顯示隱藏文件
- -A 顯示隱藏文件不顯示 . 和 ..
- -d 顯示目錄本身的信息
- -s 按文件所占空間,從大到小排列
- -r 反向
- -t 按創建日期排序
- -h 顯示文件大小的單位
- -R 遞歸(顯示目標目錄及其子目錄里的內容)
- du 查看目錄的大小
- -ah 顯示所有文件大小及總大小
- -sh 只顯示目標目錄總大小
- ln 創建硬鏈接文件
- -s 軟連接
注:不要為目錄創建硬鏈接
創建硬鏈接時,不要跨設備(如 /boot 到 / )
- alias 創建命令別名(格式:alias 別名 =“執行的命令”)
- unalias 取消命令別名
- cp 復制
- -i 提示是否覆蓋
- -f 強制覆蓋
- -p 保留屬性
- -r 遞歸復制(對目錄操作時使用)
- rm 刪除
- -i 提示是否刪除
- -f 強制刪除
- -r 遞歸刪除(對目錄操作時使用)
- mv 移動 (同目錄下移動相當于重命名)
- find 查找
格式:find 查找目錄 選項條件- -name 文件名
- -size 文件大小 K 、M 、G
- -user 創建者
- -type 文件類型
- -f 普通文件
- -exec 命令{}\ 二次篩選
- cat 查看內容較少的文件
- more 查看內容較多的文件
- head 讀取文件頭部幾行的內容
格式:head -n 文件 - tail 讀取文件尾部幾行的內容
格式:tail -n 文件
tail -f 實時讀取文件內容 - wc -l 行數
wc -w 單詞數
wc- c 字節數 - grep 篩選包含xxx字符串的行
- -i 忽略大小寫
- -v 反向選取
- "^xxx" 搜索以“xxx”開頭的行
- "xxx$" 搜索以“xxx”結尾的行
- "^$" 搜索空行
- ping 網絡測試命令
- -c 制定ping的次數
- -i 指定時間間隔
- -w 指定等待時間
用戶命令
- useradd 添加用戶
- -u 指定UID
- -e 指定失效時間
- -M 不生成家目錄
- -s 指定登錄shell
- -d 指定家目錄
- -g 指定基本組
- -G 指定附加組
- usermod 更改用戶屬性
- -l 鎖定
- -u 解鎖
- -t 更改登錄名
- passwd 更改密碼
- -l 鎖定
- -u 解鎖
- -s 查看鎖定狀態
- -d 清空密碼 以空密碼登陸
- userdel 刪除用戶
- -r 刪除用戶的同時,刪除其家目錄
vim編輯器的常用命令
vim的三種狀態:
Command: 任何輸入都會作為編輯命令,而不會出現在屏幕上,任何輸入都引起立即反映
Insert: 任何輸入的數據都置于編輯寄存器,按ESC,可跳回command方式
Escape: 以“:”或者“/”為前導的指令,出現在屏幕的最下一行,任何輸入都被當成特別指令。
- 離開vi
+:q! 離開vi,并放棄剛在緩沖區內編輯的內容- :wq 將緩沖區內的資料寫入磁盤中,并離開vi。
- :x 同wq。(注意—— :X 是文件加密,一定要與:x存盤退出相區別)
- 進入輸入模式
- a (append) 由游標之后加入資料
- A 由該行之末加入資料。
- i (insert) 由游標之前加入資料。
+I 由該行之首加入資料。
+o (open) 新增一行於該行之下供輸入資料之用。 - O 新增一行於該行之上供輸入資料之用。
- 刪除與修改
- x 刪除游標所在該字元
- X 刪除游標所在之前一字元
- r 用接於此指令之后的字元取代(replace)游標所在字元。如:ra將游標所在字元以 a 取代之。
- R 進入取代狀態,直到《ESC》為止
- s 刪除游標所在之字元,并進入輸入模式直到《ESC》。
- S 刪除游標所在之該行資料,并進入輸入模式直到《ESC》
- 光標的移動
- m<a-z> 設置書簽<a-z>
- <a-z> 移至書簽<a-z>處
- 0 移至該行之首
- $ 移至該行之末
- e 移動到下個字的最後一個字母
- w 移動到下個字的第一個字母
- b 移動到上個字的第一個字母
- ^ 移至該行的第一個字元處
- H 移至視窗的第一行
- M 移至視窗的中間那行
- L 移至視窗的最后一行
- G 移至該文件的最后一行
- "+" 移至下一列的第一個字元處
- "-" 移至上一列的第一個字元處。
- n 移至該文件的第 n 列
- n+ 移至游標所在位置之后的第 n 列
- n- 移至游標所在位置之前的第 n 列。
- 剪切、復制、刪除
Operator + Scope = command - Operator
- d 剪切
- y 復制
- p 粘帖,與 d 和 y 配和使用,可將最后d或y的資料放置於游標所在位置之行列下。
- c 修改,替換游標內容。
- Scope
- e 由游標所在位置至該字串的最后一個字元
- w 由游標所在位置至下一個字串的第一個字元。
- b 由游標所在位置至前一個字串的第一個字元。
- $ 由游標所在位置至該行的最后一個字元。
- 0 由游標所在位置至該行的第一個字元。
- 整行動作
- dd 刪除整行
- D 以行為單位,刪除游標后之所有字元
- cc 修改整行的內容
- yy 游標所在該行復制到記憶體緩沖區
- 取消前一動作(Undo)
- u 恢復最后一個指令之前的結果
- U 恢復游標該行之所有改變。
(vim) u 可以多次撤消指令,一次撤消一個操作,直至本次操作開始為止。
(vim) Ctrl+r 可以恢復撤消前內容,按多次可恢復多次。
- 查找與替換
- /字串 往游標之后尋找該字串
- ?字串 往游標之前尋找該字串
- n 往下繼續尋找下一個相同的字串
- N 往上繼續尋找下一個相同的字串
- % 查找“(”,“)”,“{”,“}”的配對符。
- s 搜尋某行列范圍。
- g 搜尋整個編輯緩沖區的資料。
- :1,$s/old/new/g 將文件中所有的『old』改成『new』。
- :10,20s/^/ / 將第10行至第20行資料的最前面插入5個空白。
(vim)/字符串后邊輸入查詢內容可保存至緩沖區中,可用↑↓進行以往內容選擇。
另外:將光標移動在選定單詞下方按*,則可以選中此單詞作為查詢字符,可以避免輸入一長串字符的麻煩。
(vim) 大小寫替換
首先用按v開啟選擇功能,然后用↑↓←→鍵來選定所要替換的字符,若是小寫變大寫,則按U;反之按u;如果是選擇單詞,則可以在按v后,按w,最后按U/u,這樣就可以將字符隨意的改變大小寫了,而不用刪除后重新敲入。
- 資料的連接
- J 句子的連接。將游標所在之下一行連接至游標該行的后面
- 環境的設定
- :set all 可設置的環境變量列表
- :set 環境變量的當前值
- :set nu 設定資料的行號。
- :set nonu 取消行號設定。
- :set ai 自動內縮。
- :set noai 取消自動內縮。
(vim) - :set ruler 會在屏幕右下角顯示當前光標所處位置,并隨光移動而改變,占用屏幕空間較小,使用也比較方便,推薦使用。
+:set hlsearch 在使用查找功能時,會高亮顯示所有匹配的內容。 - :set nohlsearch 關閉此功能。
- :set incsearch 使Vim在輸入字符串的過程中,光標就可定位顯示匹配點。
- :set nowrapscan 關閉查找自動回環功能,即查找到文件結尾處,結束查找;默認狀態是自動回環
- 讀寫資料
- :10,20w test 將第10行至第20行的資料寫入test文件。
- :10,20w>>test 將第10行至第20行的資料加在test文件之后。
- :r test 將test文件的資料讀入編輯緩沖區的最后。
- :e [filename] 編輯新的文件。
- :e! [filename] 放棄當前修改的文件,編輯新的文件。
- :sh 進入shell環境,使用exit退出,回到編輯器中。
- :!cmd 運行命令cmd后,返回到編輯器中。
- 刪除、復制及搬移
- :10,20d 刪除第10行至第20行的資料。
- :10d 刪除第10行的資料。
- :%d 刪除整個編輯緩沖區。
- :10,20co30 將第10行至第20行的資料復制至第30行之后。
- :10,20mo30 將第10行至第20行的資料搬移至第30行之后。