Linux 目錄
- /:根目錄,一般只存放目錄,不存放檔案
- /bin -> /usr/bin:可執行二進制檔案的目錄,也是常用命令目錄,如常用的命令 ls、cat、mv 等
- /boot:該目錄中存放系統的內核檔案,系統引導時使用的各種檔案
- /dev:存放 linux 系統中所有設備的目錄,訪問其中的某個檔案就相當于訪問某個設備,常用于掛載光驅 mount /dev/cdrom /mnt
- /etc:系統組態檔存放的目錄,存放系統管理和組態檔
- /home:普通用戶主目錄,新添用戶默認在此目錄添加用戶的主目錄,用于存放用戶個人的資料
- /lib -> /usr/lib:系統的函式庫的目錄
- /lib64 -> /usr/lib64:系統的函式庫的目錄
- /media:媒體,顧名思義,該目錄下放的是可移除的裝置,包括軟碟、光碟、DVD等
- /mnt:目錄主要用來臨時掛載檔案系統,為某些設備提供默認掛載點,如通常光碟掛載于 /mnt/cdrom 下,也可以選擇任意位置進行掛載
- /opt:給主機額外安裝軟體所擺放的目錄
- /proc:虛擬檔案系統目錄,是系統記憶體的映射,可直接訪問這個目錄來獲取系統資訊
- /root:系統管理員 root 的主目錄
- /sbin -> usr/sbin:存放著只有系統管理員才能執行的命令,一般用戶只能看不能用,如 fdisk、shutdown 等
- /tmp:用于存放各種臨時檔案,須定時清除,任何人都可訪問
- /usr:用于存放系統應用程式,如安裝的軟體默認裝在 /usr/local/
Linux ls 命令
ls 即 list,用來列出給定目錄下的檔案,引數為空默認列出當前目錄下的檔案,
【用法】ls [選項] [目錄]
【常用選項】
-a、–all:列出目錄下的所有檔案,包括以 . 開頭的隱含檔案
-A:列出除了 . 和 .. 以外的檔案
-l:列出檔案的詳細資訊,如創建者、創建時間、檔案的讀寫權限串列等(詳細說明可查看 Linux chmod 命令)
-h:以合適的單位換算大小,需配合 -l 使用
-t:按時間對檔案進行排序
-S:按大小對檔案進行排序
【注意】通常也使用 ll 直接查看當前目錄,即:ll 等價于 ls -l
Linux cd 命令
cd 即改變目錄(Change Directory),用于進入到指定目錄
【用法】cd [目錄]
【注意】. 代表當前目錄,.. 代表當前目錄的父級目錄,- 代表上一次使用的目錄,~ 代表當前用戶的主目錄
【示例】
cd ..:進入父級目錄
cd -:進入上一次所在的目錄
cd ~:進入當前用戶的主目錄
Linux pwd 命令
pwd:即列印當前作業目錄(Print Working Directory)
Linux touch 命令
touch 一般用于更改檔案時間戳或創建一個空檔案,該命令不常用
【用法】touch [選項] 檔案
【常用選項】
-a、--time=atime、--time=access、--time=use:只更改訪問時間
-c、--no-create:不創建任何檔案
-d、--date=字串:使用指定字串表示時間而非當前時間
-f:此引數將忽略不予處理,僅負責解決 BSD 版本 touch 指令的兼容性問題
-m、--time=mtime、--time=modify:只更改修改時間
-r:把指定檔案或目錄的時間,統統設成和參考檔案或目錄的時間相同
-t:使用指定的時間,而非當前時間,時間格式為:[[CC]YY]MMDDhhmm[.ss]
【示例】
touch info.log error.log:創建不存在的檔案
touch -c debug.log:如果 debug.log 不存在,則不創建檔案
touch -r info.log error.log:更新 info.log 的時間和 error.log 時間戳相同
touch -t 202005122230.50 info.log:設定檔案的時間戳,
【注意】-t time 使用 time 值作為指定檔案的新時間戳,time 為 [[CC]YY]MMDDhhmm[.SS] 格式的十進制數,其中 CC 為年數中的前兩位(即"世紀數");YY為年數的后兩位(即"某世紀中的年數"),如果不給出 CC 的值,則 touch 將把年數 CCYY 限定在 1969—2068 之內;MM 為月數,DD 為天數,hh 為小時數,mm 為分鐘數,SS 為秒數(范圍是0—61,可以處理閏秒),這些數字組成的時間是環境變數TZ指定的時區中的一個時間,由于系統的限制,早于1970年1月1日的時間是錯誤的,
Linux mkdir 命令
mkdir 即創建目錄(Make Directory),用于創建具有指定名稱的目錄,要求該目錄不存在且當前用戶對作業目錄具有寫權限
【用法】mkdir [選項] [目錄...]
【常用選項】
-m、--mode=模式:為目錄指定訪問權限,與 chmod 類似
-p、--parents:當目錄的父級目錄不存在時創建父級目錄,常用于創建多級目錄
-v、--verbose:每次創建新目錄都顯示資訊
【示例】
mkdir test:創建一個名為 test 的目錄
mkdir -p test/test1/test2:先創建 test 目錄,再在 test 目錄下創建 test1 目錄,最后在 test1 目錄下創建 test2 目錄(即級聯創建多個目錄)
mkdir -m 777 test:創建一個名為 test 的目錄,并賦予可讀可寫權限
Linux rm 命令
rm 即 remove,用于洗掉目錄或檔案(可以遞回洗掉指定目錄下的所有檔案及子目錄)
【用法】rm [選項] [目錄或檔案]
【注意】rm 是一個極其危險的命令,使用的時候要特別當心,尤其對于初學者來說
【常用選項】
-f、--force:不提示,強制洗掉檔案或目錄
-i、--interactive:洗掉已有檔案或目錄之前先詢問用戶,即"互動式洗掉"
-r、-R、--recursive:遞回洗掉,將指定目錄下的所有檔案與子目錄都洗掉,若沒有 -r 選項則不會洗掉目錄
-v、--verbose:顯示指令的詳細執行程序
Linux rmdir 命令
rmdir 命令(等價于:rm -r dir 命令)用于洗掉空目錄(即一個目錄被洗掉前必須是空的),
【用法】rmdir [選項] 目錄...
【常用選項】
-p:遞回洗掉指定目錄,子目錄被洗掉后,若其父目錄也為空,則一并洗掉,如果整個路徑被洗掉或由于某種原因導致部分路徑未被洗掉,則顯示相應資訊,
-v、--verbose:顯示指令的執行程序
Linux mv 命令
mv 即 move,常用來對目錄或檔案進行重命名、移動,這是個常用命令,常用于備份檔案或目錄,
【用法】
mv [選項] source dest
mv [選項] source... directory
【常用選項】
-b:當檔案存在時,在覆寫前為其創建一個備份
-f、--force:覆寫前不詢問
-i、--interactive:覆寫前詢問
-n、--no-clobber:不覆寫已存在檔案,如果指定了 -i、-f、-n 中的多個,僅最后一個生效
-u、--update:當目標檔案存在,且源檔案較新時才會更新
【示例】
mv 檔案名 檔案名:將源檔案名改為目標檔案名
mv 檔案名 目錄名:將檔案移動到目標目錄
mv 目錄名 目錄名:目標目錄已存在,將源目錄移動到目標目錄;目標目錄不存在則改名
mv 目錄名 檔案名:出錯
mv a.txt b.txt:將 a.txt 重命名為 b.txt
mv a.txt test/:將 a.txt 移動到 test 目錄下
mv aaa bbb:將檔案 aaa 更名為 bbb
mv info/ log:將 info 目錄放入 log 目錄中,若 log 目錄不存在,則將 info 重命名為 log
mv /usr/test/* .:將 /usr/test 下的所有檔案和目錄移到當前目錄下
Linux cp 命令
cp 即 copy,用于將一個或多個源檔案或目錄復制到指定的目標檔案或目錄,它可以將單個源檔案復制成一個指定檔案名的具體檔案或一個已經存在的目錄下,但當一次復制多個檔案時,目標檔案引數必須是一個已存在的目錄,否則將出錯,
【用法】cp [選項] [源檔案] [目標檔案]
【常用選項】
-b:覆寫已存在的目標檔案前將目標檔案備份
-d:當復制符號連接時,把目標檔案或目錄也建立為符號連接,并指向與源檔案或目錄連接的原始檔案或目錄
-f:強行復制檔案或目錄,不論目標檔案或目錄是否已存在,且覆寫前不詢問
-i:覆寫既有檔案前先詢問用戶
-l:對源檔案建立硬連接,而非復制檔案
-p:保留源檔案或目錄的屬性
-r、-R:遞回復制指定目錄下的所有檔案與子目錄
-s:對源檔案建立符號連接,而非復制檔案
-u:若目標檔案存在,且源檔案比目標檔案新,才會更新
-S:在備份檔案時,用指定的后綴 SUFFIX 代替檔案的默認后綴
-v、--verbose:顯示詳細的進行步驟
【示例】
cp dir1/a.doc dir2:將 dir1 目錄下的 a.doc 檔案復制到 dir2 目錄下
cp -r dir1 dir2:將 dir1 及其所包含的所有檔案復制到 dir2 目錄下
cp -r dir1/. dir2:將 dir1 目錄下的所有檔案復制到 dir2 目錄下,不包括 dir1 目錄本身
cp dir1/a.doc .:將 dir1 目錄下的 a.doc 檔案復制到當前目錄下
cp dir1/a.doc dir2/b.doc:將 dir1 目錄下的 a.doc 檔案復制到 dir2 目錄下,并重命名為 b.doc
cp -r /usr/dir1 /usr/dir2:將 /usr/dir1 目錄下的所有檔案及目錄復制到 /usr/dir2 目錄中
cp -i /usr/dir1 i*.log /usr/dir2:互動式地將 /usr/dir1 目錄下以 i 開頭的所有 .log 檔案都復制到 /usr/dir2 目錄中
cp dir1/* /dir2:復制 dir1 目錄下的所有檔案到 /dir2 目錄下,若 /dir2 目錄下有和 dir1 目錄下同名的檔案,需要按 Y 來確認,并且會忽略 dir1 目錄下的子目錄
cp -r dir1/* /dir2:依然需要按 Y 來確認操作,但沒有忽略子目錄
cp -r -a dir1/* /dir2:需要按 Y 來確認操作,并且把 /dir1 目錄以及子目錄和檔案屬性也傳遞到了 /dir2
\cp -r -a dir1/* /dir2:成功,沒有提示按Y、傳遞了目錄屬性、沒有略過目錄,
Linux ln 命令
ln 命令用來為檔案創建鏈接,鏈接型別分為硬鏈接和軟鏈接(符號鏈接)兩種,
1)、軟連接:和Windows系統中的快捷方式有點類似
2)、硬鏈接:相當于多了一個檔案名指向同一塊記憶體空間,目錄無法創建硬鏈接,不可以跨檔案系統創建硬鏈接
【注意】洗掉檔案名不影響硬鏈接與檔案的使用,但軟鏈接卻無法繼續使用,
【用法】ln [選項] [源檔案或目錄] [目標檔案或目錄]
【常用選項】
-b:洗掉,覆寫以前建立的鏈接
-d:創建指向目錄的硬鏈接(只適用于超級用戶)
-f:強制執行,操作前不詢問
-i:互動模式,檔案存在則提示用戶是否覆寫
-n:把符號鏈接視為一般目錄
-s:創建軟鏈接(符號鏈接)
-v:顯示詳細的處理程序
【示例】
ln -s a.txt a_softlink.txt:對 a.txt 創建軟鏈接 a_softlink.txt
ln a.txt a_hardlink.txt:對 a.txt 創建硬鏈接 a_hardlink.txt
Linux cat 命令
cat 命令用于連接檔案并列印到標準輸出設備上,常用于查看小文本檔案,
【用法】cat [選項] [檔案名]
【常用選項】
-A、-show-all:與 -vET 等價
-b、--number-nonblank:對非空輸出行編號,和 -n 相似,只不過對于空白行不編號
-e:與 -vE 等價
-E、--show-ends:在每行結束處顯示 $
-n、--number:由 1 開始對所有輸出的行數編號
-s、--squeeze-blank:當遇到有連續兩行以上的空白行,就代換為一行的空白行
-t:與 -vT 等價
-T、--show-tabs:將 TAB 字符顯示為 ^I
-v、--show-nonprinting:使用 ^ 和 M- 參考,除了 LFD 和 TAB 之外
【示例】
cat a.txt:查看 a.txt 檔案的內容
cat a.txt b.txt:同時顯示 a.txt 和 b.txt 檔案內容,注意檔案名之間以空格分隔,而不是逗號
cat -n a.txt > b.txt:把 a.txt 檔案內容加上行號后輸入到 b.txt 檔案里,會覆寫原來的內容,檔案不存在則創建它
cat -n a.txt >> b.txt:把 a.txt 檔案內容加上行號后追加到 b.txt 中去,不會覆寫原來的內容,檔案不存在則創建它
cat -b a.txt b.txt >> c.txt:把 a.txt、b.txt 檔案內容加上行號(空白行除外)后再將內容追加到 c.txt 檔案里
cat /dev/null > /etc/a.txt:清空 /etc/a.txt 檔案內容
Linux nl 命令
nl 命令在 linux 系統中用來計算檔案中行號(類似于 cat -n 命令),該命令還可以將輸出的檔案內容自動加上行號,其默認的結果與 cat -n 是有區別的,
【用法】nl [選項...] [檔案...]
【常用選項】
-b:指定列出行號的方式,主要有兩種
-b a:不論是否為空行,都列出行號(類似于 cat -n)
-b t:如果有空行,則空的那一行不列出行號(默認值)
-n:指定表示行號的方法,主要有三種
-n ln:行號在螢幕的最左方顯示
-n rn:行號在自己欄位的最右方顯示,且不加 0
-n rz:行號在自己欄位的最右方顯示,且加 0
-w:行號欄位占用的位數,默認為 6 位
-p:在邏輯定界符處不重新開始計算
Linux head 命令
head 命令用于查看檔案的頭部指定數量的字符塊,默認顯示指定檔案的開頭 10 行,如果給定的檔案不止一個,則在顯示的每個檔案前面加一個檔案名標題,與 tail 命令用法相似,
【用法】head [選項] [檔案...]
【常用選項】
-c、--bytes=[-]K:k 表示顯示檔案開始的前 k 個位元組,-k 表示不顯示檔案結尾的最后 k 個位元組
-n、--lines=[-]K:k 表示顯示檔案開始的前 k 行,-k 表示不顯示檔案結尾的最后 k 行
-q、--quiet、--silent:不顯示包含給定檔案名的檔案頭
-v、--verbose:總是顯示包含給定檔案名的檔案頭
【示例】
head -c 5 logs/info.log:顯示檔案的前 5 個位元組
head -n 5 logs/info.log:顯示檔案的前 5 行
head -c -5 logs/info.log:顯示檔案中除了最后 5 個位元組以外的內容
head -n -5 logs/info.log:顯示檔案中除了最后 5 行以外的內容
Linux tail 命令
tail 命令用于查看檔案的尾部指定數量的字符塊,默認顯示檔案的最后 10 行,如果給定的檔案不止一個,則在顯示的每個檔案前面加一個檔案名標題,與 head 命令用法相似,
【用法】tail [選項] [檔案...]
【常用選項】
-c、--bytes=K:k 表示顯示檔案結尾的前 k 位元組,+k 表示不顯示檔案開始的前 k-1 位元組
-n、--lines=K:k 表示顯示檔案結尾的 k 行,+k 表示不顯示檔案開始的前 k-1 行
-q、--quiet、--silent:當有多個檔案引數時,不輸出各個檔案名
-f、--follow[={name|descriptor}]:動態監視檔案最新追加的內容
-s、--sleep-interval=N:與 -f 選項連用,指定監視檔案變化時間隔的秒數
【示例】
tail logs/info.log:顯示 info.log 檔案的最后 10 行
tail +20 logs/info.log:顯示 info.log 檔案從第 20 行至檔案末尾的內容
tail -4 logs/info.log:顯示 info.log 檔案最后 4 行內容
tail -c 10 logs/info.log:顯示 info.log 檔案的最后 10 個字符
tail -n +10 logs/info.log:顯示 info.log 檔案除了前 9 行以外的內容
tail -f logs/info.log:顯示 info.log 檔案的動態變化
Linux which 命令
which 命令常用于查看指定命令的絕對路徑,還可以看到某個系統命令是否存在、執行的到底是哪一個位置的命令,
【用法】which [命令]
【示例】
which ls:查看 ls 命令的絕對路徑
## Linux whereis 命令
whereis 命令用于搜索,且只能搜索與指定名字匹配的二進制檔案、源檔案和幫助手冊檔案所在的路徑,如果省略引數,則回傳所有資訊,和 find 相比,whereis 查找的速度非常快,因為 linux 系統會將系統內的所有檔案都記錄在一個資料庫檔案中,使用 whereis 和 locate 時會從資料庫中查找資料,而 find 命令則是通過遍歷硬碟來查找,但該資料庫檔案不是實時更新的,默認是每星期更新一次,所以在用 whereis 和 locate 查找檔案時,可能會找到已被洗掉的資料或剛建立的檔案無法被查找到,這就是因為資料庫檔案沒有更新,
【用法】whereis [-bmsu] [BMS 目錄名 -f] 檔案名
【常用選項】
-b:定位可執行檔案
-m:定位幫助檔案
-s:定位源代碼檔案
-u:搜索默認路徑下除可執行檔案、源代碼檔案、幫助檔案以外的其它檔案
-B:指定搜索可執行檔案的路徑
-M:指定搜索幫助檔案的路徑
-S:指定搜索源代碼檔案的路徑
【示例】
whereis svn:查找所有和 svn 有關的檔案
whereis -b svn:查找和 svn 有關的二進制檔案
Linux locate 命令
locate 命令用于查找符合條件的檔案,它會去保存檔案和目錄名稱的資料庫內查找合乎范本樣式條件的檔案或目錄,一般情況下只需輸入 locate fileName 即可,該命令的速度比 find 更快,但剛建立的檔案通過該命令將搜索不到,
【附加說明】
locate 與 find 不同: find 是去硬碟找,而 locate 是在 /var/lib/slocate/slocate.db 資料庫中找,所以 locate 的速度比 find 快,但 locate 查找并非實時的,而是以資料庫的更新為準,一般是系統自己維護,也可以手工(命令為:updatedb)升級資料庫,
【安裝命令】yum install mlocate
【用法】locate [選項] [范本樣式...]
【常用選項】
-d、--database=<檔案名>:指定 locate 命令使用的資料庫,系統默認為 /var/lib/slocate/slocate.db 檔案
-c、--count:只輸出找到的數量
-e:將排除在尋找的范圍之外
-q、--quiet:安靜模式,不會顯示任何錯誤資訊
-i、--ignore-case:忽略大小寫
-f:將特定檔案系統排除在外(如:沒必要把 proc 檔案系統中的檔案放進資料庫中)
-n:至多顯示 n 個輸出
-o:指定資料庫中存的名稱
【示例】
locate pwd:查找和 pwd 相關的所有檔案
locate ./logs/info:搜索 ./logs 目錄下所有以 info 開頭的檔案
locate ./logs/*.log:搜索 ./logs 目錄下所有以 .log 結束的檔案
Linux grep 命令
grep 用于查找內容包含指定范本樣式的檔案,如果發現某檔案的內容符合所指定的范本樣式,則會把含有范本樣式的那一列顯示出來,若不指定任何檔案名稱,或是所給予的檔案名為 -,則 grep 指令會從標準輸入設備讀取資料,
【用法】grep [常用選項...] 范本樣式 fileName
【常用選項】
-a、--text:不忽略二進制資料
-A<顯示行數>、--after-context=<顯示行數>:除了顯示符合范本樣式的列外,還顯示該行之后的內容
-b、--byte-offset:在顯示符合樣式的行之前,標示出該行第一個字符的編號
-B<顯示行數>、--before-context=<顯示行數>:除了顯示符合樣式的行外,還顯示該行之前的內容
-c、--count:計算符合樣式的列數
-C<顯示行數>、--context=<顯示行數>、-<顯示行數>:除了顯示符合樣式的行外,還顯示該行之前后的內容
-d<動作>、--directories=<動作>:當指定要查找的是目錄時,必須使用這項引數,否則 grep 指令將會報資訊并停止動作
-e<范本樣式>、--regexp=<范本樣式>:指定字串做為查找檔案內容的樣式
-E、--extended-regexp:將樣式為延伸的普通表示法來使用
-f<規則檔案>、--file=<規則檔案>:指定規則檔案,其內容含有一個或多個規則樣式,讓 grep 查找符合規則條件的檔案內容,格式為每行一個規則樣式
-F、--fixed-regexp:將樣式視為固定字串的串列
-G、--basic-regexp:將樣式視為普通的表示法來使用
-h、--no-filename:在顯示符合樣式的行前,不標示該行所屬的檔案名稱
-H、--with-filename:在顯示符合樣式的行之前,表示該行所屬的檔案名稱
-i、--ignore-case:忽略字符大小寫的差別
-l、--file-with-matches:列出檔案內容符合指定的樣式的檔案名稱
-L、--files-without-match:列出檔案內容不符合指定的樣式的檔案名稱
-n、--line-number:在顯示符合樣式的行之前,標示出該行的列數編號
-q、--quiet或--silent:不顯示任何資訊
-r、--recursive:此引數的效果和指定 -d recurse 引數相同
-s、--no-messages:不顯示錯誤資訊
-v、--revert-match:顯示不包含匹配文本的所有行
-w、--word-regexp:只顯示全字符合的列
-x、--line-regexp:只顯示全列符合的列
-y:此引數的效果和指定 -i 引數相同,
【范本樣式】
^:錨定行的開始(如:'^grep'匹配所有以 grep 開頭的行)
$:錨定行的結束(如:'grep$'匹配所有以 grep 結尾的行)
.:匹配一個非換行符的字符(如:'gr.p'匹配 gr 后接一個任意字符,然后是 p)
*:匹配零個或多個先前字符(如:'*grep'匹配所有一個或多個空格后緊跟 grep 的行)
.*:代表任意字符
[]:匹配一個指定范圍內的字符(如:'[Gg]rep'匹配 Grep 和 grep)
[^]:匹配一個不在指定范圍內的字符(如:'[^A-FH-Z]rep'匹配不包含 A-R 和 T-Z 的一個字母開頭,緊跟 rep 的行)
\(..\):標記匹配字符(如:'\(love\)',love 被標記為1)
\<:錨定單詞的開始(如:'\<grep'匹配包含以grep開頭的單詞的行)
\>:錨定單詞的結束(如:'grep\>'匹配包含以 grep 結尾的單詞的行)
x\{m\}:重復字符x,m次(如:'0\{5\}'匹配包含5個0的行)
x\{m,\}:重復字符x,至少 m 次(如:'o\{5,\}'匹配至少有5個o的行)
x\{m,n\}:重復字符x,至少 m 次,不多于 n 次(如:'o\{5,10\}'匹配 5-10個o的行)
\w:匹配文字和數字字符,也就是[A-Za-z0-9](如:'G\w*p'匹配以G后跟零個或多個文字或數字字符,然后是p)
\W:\w 的反置形式,匹配一個或多個非單詞字符(如:點號、句號等)
\b:單詞鎖定符(如: '\bgrep\b'只匹配 grep)
【示例】
ps -ef|grep svn:查找指定行程
ps -ef|grep svn -c 或 ps -ef|grep -c svn:查找指定行程個數
cat test.txt | grep -f test2.txt:輸出 test.txt 檔案中含有從 test2.txt 檔案中讀取出的關鍵詞的內容行
cat test.txt | grep -nf test2.txt:輸出 test.txt 檔案中含有從 test2.txt 檔案中讀取出的關鍵詞的內容行,并顯示每一行的行號
grep 'linux' test.txt 或 grep -n 'linux' test.txt:從檔案中查找關鍵詞,后者多顯示行號
grep 'linux' test.txt test2.txt 或 grep -n 'linux' test.txt test2.txt:從多個檔案中查找關鍵詞,后者多顯示行號,注意多檔案輸出資訊內容行時,會把檔案名在行最前面輸出并加上":"作為標示符
cat test.txt |grep ^u:找出以 u 開頭的行內容
cat test.txt |grep ^[^u]:輸出非 u 開頭的行內容
cat test.txt |grep hat$:輸出以 hat 結尾的行內容
cat test.txt |grep -E "ed|at":顯示包含 ed 或 at 字符的內容行
grep '[a-z]\{7\}' *.txt:顯示當前目錄下以 .txt 結尾的檔案中所有包含每個字串至少有7個連續小寫字符的字串的行
Linux wget 命令
wget 命令用于從網路下載資源,若不指定保存目錄,則默認存放在當前目錄,
【用法】wget [選項] [URL地址]
【常用選項】
-b、–background:后臺下載資源,下載大檔案時可以使用該引數進行后臺下載
-o、–output-file=fileName:把記錄寫到 fileName 檔案中
-a、–append-output=fileName:把記錄追加到 fileName 檔案中
-O –output-document=fileName:把檔案寫到 fileName 檔案中
-q、–quiet:安靜模式,沒有任何輸出
-t、–tries=次數:設定最大嘗試鏈接次數(0 表示無限制)
-c、–continue:接著下載未下載完的檔案
-N、–timestamping:不要重新下載檔案除非比本地檔案新
-S、–server-response:列印服務器的回應
–spider:不下載任何東西
-T、–timeout=SECONDS:設定回應超時的秒數
-w、–wait=SECONDS:兩次嘗試之間間隔 SECONDS 秒
-Q、–quota=NUMBER:設定下載的容量限制
–limit-rate=RATE:限定下載輸率
-nd、–no-directories:不創建目錄
-x、–force-directories:強制創建目錄
-nH、–no-host-directories:不創建主機目錄
-P、–directory-prefix=dir:將檔案保存到指定目錄
【示例】
wget -O xiazai.zip http://www.no.com/download.zip:使用 wget -O 下載檔案并重命名再保存
wget --limit-rate=300k http://www.no.com/download.zip:使用 wget –limit-rate 限速下載
wget -c http://www.no.com/download.zip:使用 wget -c 斷點續傳
wget -b http://www.no.com/download.zip:使用 wget -b 后臺下載
Linux wc 命令
wc 命令用來統計位元組數、字符數、字數、行數等,
【用法】wc [選項] [檔案]
【常用選項】
-c、--bytes:統計位元組數
-m、--chars:統計字符數,不能與 -c 一起使用
-w、--words:統計字數,一個字被定義為由空白、跳格或換行字符分隔的字串
-l、--lines:統計行數
-L:列印最長行的長度
【示例】
wc -c test.txt:統計 test.txt 的位元組數
wc -l test.txt:統計 test.txt 的行數
Linux tar 命令
tar 命令的功能:將多個檔案打包為一個檔案;將檔案打包并壓縮;將打包的檔案解包;將打包壓縮的檔案解壓,
打包和壓縮:打包是指將一大堆檔案或目錄變成一個總的檔案;壓縮則是將一個大的檔案或目錄通過壓縮演算法變成一個小檔案,
【用法】
通用:tar [選項] [檔案..]
壓縮:tar -jcv -f filename.tar.bz2 要壓縮的檔案或目錄名稱
查詢:tar -jtv -f filename.tar.bz2
解壓:tar -jxv -f filename.tar.bz2 -C 欲解壓縮的目錄
【常用選項】
-A、--catenate:新增檔案到已存在的壓縮檔案
-B:設定區塊大小
-C、--directory=DIR:將檔案解壓到指定目錄
-c、--create:創建新的壓縮檔案
-d:記錄檔案的差別
-f、--file:列出壓縮檔案中的內容,后面只能接檔案名
-j、--bzip2:通過 bzip2 解壓檔案
-k、--keep-old-files:保留源檔案不覆寫
-r、--append:追加檔案至歸檔結尾
-t、--list:列出壓縮檔案的內容
-u、--update:僅追加比歸檔中副本更新的檔案
-v、--verbose:顯示指令執行程序
-x、--extract、--get:從壓縮檔案中還原檔案
-z、--gzip、--gunzip、--ungzip:通過 gzip 指令處理壓縮檔案
-Z、--compress、--uncompress:通過 compress 指令處理壓縮檔案
【常見解壓/壓縮命令】
- tar(該目錄是打包而非壓縮)相關
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
- .gz 相關
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
- .tar.gz 和 .tgz 相關
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
- .zip 相關
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
- .rar 相關
解壓:rar x FileName.rar
壓縮:rar a FileName.rar DirName
【示例】
tar -cvf test.tar 1.txt 2.txt 3.txt 4.txt:將 1.txt、2.txt、3.txt、4.txt 檔案打包為 test.tar
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt 4.txt:將 1.txt、2.txt、3.txt、4.txt 檔案打包并壓縮為 test.tar.gz
tar -jcvf test.tar.bz2 *.txt:將 1.txt、2.txt、3.txt、4.txt 檔案打包并壓縮為 test.tar.bz2
tar -tf test.tar:列出 test.tar 里的檔案
tar -xvf test.tar:將 test.tar 解包
tar -zxvf test.tar.gz:將 test.tar.gz 解壓
tar -jxvf test.tar.bz2:將 test.tar.bz2 解壓
tar -cvf log.tar log2012.log:僅打包,不壓縮!
tar -zcvf log.tar.gz log2012.log:打包后以 gzip 壓縮
tar -jcvf log.tar.bz2 log2012.log:打包后以 bzip2 壓縮
Linux date 命令
date 命令常用于設定系統時間、按指定格式顯示時間等,
【用法】date [選項..] [格式]
【常用選項】
-d、--date=STRING:顯示指定日期的時間
-I:只顯示日期
-r、--reference=檔案:顯示指定檔案的最后修改時間
-R、--rfc-2822:以 RFC 2822 格式輸出日期和時間
-s、--set=STRING:設定系統時間為指定時間STRING
-u、--utc、--universal:顯示UTC時間(UTC)
【日期格式】
%%:一個 %
%a:當前 locale 的星期名縮寫(如: 日,代表星期日)
%A:當前 locale 的星期名全稱(如:星期日)
%b:當前 locale 的月名縮寫(如:一,代表一月)
%B:當前 locale 的月名全稱(如:一月)
%c:當前 locale 的日期和時間(如:2005年3月3日 星期四 23:05:25)
%C:世紀,通常為省略當前年份的后兩位數字(如:20)
%d:按月計的日期(如:01)
%D:按月計的日期,等價于 %m/%d/%y
%e:按月計的日期,添加空格,等價于 %_d
%F:完整日期格式,等價于 %Y-%m-%d
%g:ISO-8601 格式年份的最后兩位(參見%G)
%G:ISO-8601 格式年份(參見%V),一般只和 %V 結合使用
%h:等價于%b
%H:小時(00-23)
%I:小時(00-12)
%j:按年計的日期(001-366)
%k:時(0..23),等價于 %_H
%l:時(1..12),等價于 %_I
%m:月(01..12)
%M:分鐘(00..59)
%n:換行
%N:納秒(000000000-999999999)
%p:當前 locale 下的上午或下午,未知時輸出為空
%P:與 %p 類似,但是輸出小寫字母
%r:當前 locale 下 12 小時制的時鐘時間(如:11:11:04 下午)
%R:24 小時制的時和分,等價于 %H:%M
%s:自 UTC 時間 1970-01-01 00:00:00 以來所經過的秒數
%S:秒(00-60)
%t:輸出制表符 Tab
%T:時間,等于 %H:%M:%S
%u:星期,1 代表星期一
%U:一年中的第幾周,以周日為每星期第一天(00-53)
%V:ISO-8601 格式規范下的一年中第幾周,以周一為每星期第一天(01-53)
%w:一星期中的第幾日(0-6),0 代表周一
%W:一年中的第幾周,以周一為每星期第一天(00-53)
%x:當前 locale 下的日期描述(如:12/31/99)
%X:當前 locale 下的時間描述(如:23:13:48)
%y:年份最后兩位數位(00-99)
%Y:年份
%z:+hhmm 數字時區(如:-0400)
%:z:+hh:mm 數字時區(如:-04:00)
%::z:+hh:mm:ss 數字時區(如:-04:00:00)
%:::z:數字時區帶有必要的精度(如:-04,+05:30)
%Z:按字母表排序的時區縮寫(如:EDT)
【示例】
date:顯示當前時間
date "+%Y年%m月%d日,%H時%M分%S秒":按"xxxx年xx月xx日,xx時xx分xx秒"的格式輸出時間
date -s "20200515":設定日期(注意:會將時間設定為凌晨)
date -s "23:23:23":設定時間
date -s "20200515 23:23:23":設定日期和時間
Linux cal 命令
cal 命令用于查看日歷,
【用法】cal [選項] [[[日] 月] 年]
【常用選項】
-1、--one:顯示當前月份的日歷(默認)
-3、--three:顯示上個月、當月和下個月的日歷
-s、--sunday:顯示當前月份的日歷(以周日作為一周第一天)
-m、--monday:顯示當前月份的日歷(以周一用為一周第一天)
-j、--julian:顯示在當年中的第幾天(從1月1號算起,顯示當前月日期在一年中的天數)
-y、--year:顯示當前年份的日歷(包括1-12月)
【示例】
cal 或 cal -1:顯示當前月份日歷
cal 5 2020:顯示指定月份的日歷
cal 2020 或 cal -y 2020:顯示 2020 年日歷
cal -j:顯示當前年份從1月1日開始的天數
cal -m:星期一顯示在第一列
Linux more 命令
more 命令類似于 cat 命令,但比 cat 命令強大,cat 命令是將整個檔案的內容從上到下顯示在螢屏上,more 命令會一頁一頁的顯示,方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能,more 命令從前向后讀取檔案,因此在啟動時就加載整個檔案,
【常用快捷鍵】
space、z:向下滾動一屏
b、Ctrl+b:回傳上一屏
Enter:向下滾動 1 行
=:當前行的行號
v:用 vi 編輯器打開當前內容
:f:顯示當前檔案檔案名與當前行號
d、Ctrl+D:向下翻 K 行,默認k=11
q、Q:退出more
Ctrl+L:類似于清屏
【用法】more [選項] 檔案
【常用選項】
-c:從頂部清屏,然后顯示
-d:提示“Press space to continue,’q’ to quiet”,禁用響鈴功能
-f:統計邏輯行數而不是螢屏行數
-l:忽略 Ctrl+l(換頁)字符
-p:通過清除視窗而不是滾屏來對檔案進行換頁,與 -c 選項相似
-u:把檔案內容中的下畫線去掉
-s:把連續的多個空行顯示為一行
-n:定義螢屏大小為 n 行
+n:從笫 n 行開始顯示
+/pattern:在每個檔案顯示前搜尋該字串(pattern),然后從該字串前兩行之后開始顯示
Linux less 命令
less 命令與 more 命令類似,使用 less 可以隨意瀏覽檔案,而 more 只能向前移動而不能向后移動,而且 less 在查看之前不會加載整個檔案,
less [選項] 檔案
【常用選項】
-b <緩沖區大小>:設定緩沖區的大小
-e:當檔案顯示結束后自動離開
-f:強迫打開特殊檔案(如:外圍設備代號、目錄、二進制檔案等)
-g:只標志最后搜索的關鍵詞
-i:忽略搜索時的大小寫
-m:顯示類似 more 命令的百分比
-N:顯示每行的行號
-o <檔案名>:將 less 輸出的內容在指定檔案中保存起來
-Q:不使用警告音
-s:顯示連續空行為一行
-S:行過長時間將超出部分舍棄
-x <數字>:將 tab 鍵顯示為規定的數字空格
/字串:向下搜索字串
?字串:向上搜索字串
n:重復前一個搜索(與 / 或 ? 有關)
N:反向重復前一個搜索(與 / 或 ? 有關)
b:向后翻一頁
d:向后翻半頁
Q:退出less 命令
u:向前滾動半頁
y:向前滾動一行
空格鍵:滾動一行
回車鍵:滾動一頁
[pagedown]:向下翻動一頁
[pageup]:向上翻動一頁
Linux free 命令
free 命令可以查看記憶體使用的相關情況,
【用法】free [選項]
【常用選項】
-b:以 Byte 為單位顯示記憶體使用情況
-k:以 KB 為單位顯示記憶體使用情況(默認就是以 KB 顯示)
-m:以 MB 為單位顯示記憶體使用情況
-g:以 GB 為單位顯示記憶體使用情況
-h:以合適的單位顯示記憶體使用情況
-o:不顯示緩沖區調節列
-s:每 n 秒重繪,動態觀察記憶體使用狀況
-t:顯示記憶體總和列
【示例】
[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 1.8G 143M 1.5G 8.6M 200M 1.5G
Swap: 2.0G 0B 2.0G
【說明】
Mem-記憶體;Swap-虛擬記憶體,
total-記憶體總數;used-已經使用的記憶體數;free-未分配的記憶體數;available-可用記憶體;bbuff/cache-快取記憶體數,
tatal = used + free + buff/cache
available = free + buff/cache - 不可回收的部分
Linux ps 命令
ps 命令是 Process Status 的縮寫,用于查看當前系統的行程狀態,運用該命令可以確定有哪些行程正在運行、查看行程運行的狀態、 行程是否結束、行程有沒有僵死、哪些行程占用了過多地資源等,可以搭配 kill 指令隨時中斷、殺死不必要的行程,
【用法】ps [選項]
【常用選項】
-a:顯示現行終端機下的所有程式,包括其他用戶的程式
-A:顯示所有行程
-c:列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,引數或常駐服務的標示
-e:列出程式時,顯示每個程式所使用的環境變數
-f:顯示 UID、PID、PPID、C、STIME、TTY、TIME、CMD 欄位
-H:顯示樹狀結構,表示程式間的相互關系
-N:顯示所有的程式,除了執行 ps 指令終端機下的程式之外
-u:以用戶為主的格式來顯示程式狀況
-x:顯示所有程式,不以終端機來區分
Linux top 命令
top 命令用于實時監測系統資源使用狀況,包含行程、cpu、記憶體等,
【用法】top [選項]
【常用選項】
-b:以批處理模式操作
-c:顯示完整的治命令
-d:螢屏重繪間隔時間
-I:忽略失效程序
-s:保密模式
-S:累積模式
-i<時間>:設定重繪間隔時間
-u<用戶名>:指定用戶名
-p<行程號>:指定行程
-n<次數>:回圈顯示的次數
Linux chmod 命令
chmod 命令用于管理檔案或目錄的權限,權限分為讀取(r)、寫入(w)、執行(x)3種,"可讀可寫可執行"用二進制 1 表示擁有該權限,0 表示沒有該權限,則具有全部權限的二進制為 111(即十進制的 7),只有讀權限的二進制為 100(即 十進制的 4),以此類推……
【用法】chmod [選項] [檔案..]
【注意】
chmod 也可以用數字來表示權限,語法為:chmod abc file,其中 a、b、c 各為一個數字,分別表示 User、Group、Other 的權限,r=4,w=2,x=1 ===> 若要 rwx 屬性則 4+2+1=7;若要 rw- 屬性則 4+2=6;若要 r-x 屬性則4+1=5,
chmod a=rwx file 等價于 chmod 777 file
chmod ug=rwx,o=x file 等價于 chmod 771 file
【權限范圍】
u、User:即檔案或目錄的擁有者
g、Group:即檔案或目錄的所屬群組
o、Other:除了檔案或目錄擁有者或所屬群組外,其他用戶皆屬于這個范圍
a,All:即全部的用戶(包括擁有者、所屬群組、其他用戶)
r:讀取權限,數字代號為4(即 100)
w:寫入權限,數字代號為2(即 010)
x:執行或切換權限,數字代號為1(即 001)
-:不具任何權限,數字代號為0(即 000)
【常用選項】
-c、--changes:若檔案權限確實被更改,才顯示其更改動作,效果類似 -v 引數,但僅顯示更改部分
-f、--quiet、--silent:即使檔案權限無法更改也不顯示錯誤資訊
-R、--recursive:遞回處理,將指定目錄下的檔案及子目錄進行相同的權限變更
-v、--verbose:顯示指令執行程序
--reference=<file>:把指定檔案或目錄的所屬群組全部設成和參考檔案或目錄的所屬群組相同
<權限范圍>+<權限>:增加指定權限 (chmod u+r file)
<權限范圍>-<權限>:洗掉指定權限 (chmod g-rw file)
<權限范圍>=<權限>:等于指定權限 (chmod o=rwx file)
【示例】
chmod g+w test.txt:給 test.txt 所屬組增加寫權限
chmod o-r,g+w test.txt:洗掉 test.txt 其他用戶的讀權限,同時增加所屬組的寫權限
chmod u=rwx,g=rw,o=- test.txt:修改 test.txt 的權限為 u=rwx,g=rw,o=-
chmod ugo+r test.txt 或 chmod a+r test.txt:將檔案 test.txt 設為所有人皆可讀
chmod ug+w,o-w test1.txt test2.txt:將檔案 test1.txt 與 test2.txt 設為該檔案擁有者,與其所屬同一個群體者可寫入,但其他以外的人則不可寫入
chmod u+x test1.txt:將 test1.txt 設定為只有該檔案擁有者可以執行
chmod -R a+r *:將當前目錄下的所有檔案與子目錄設為任何人可讀取
Linux df 命令
df 命令用于查看檔案系統的磁盤使用情況統計,如:磁盤的磁區、已使用空間、剩余空間等,
【用法】df [選項] [檔案..]
【常用選項】
-a、--all:全部檔案系統
-h、--human-readable:以合適的單位來顯示資訊
-H、--si:與 -h 引數相同,但在計算時是以 1000 Bytes 為換算單位而非 1024 Bytes
-i、--inodes:顯示 inode 的資訊
-k、--kilobytes:指定區塊大小為 1024 位元組
-l、--local:只顯示本地檔案系統
-m、--megabytes:指定區塊大小為 1048576 位元組
-P、--portability:使用 POSIX 的輸出格式
--sync:在取得磁盤使用資訊前,先執行async指令
-t<TYPE>、--type=<TYPE>:僅顯示指定檔案系統型別的磁盤資訊
-T、--print-type:顯示檔案系統的型別
-x<TYPE>、--exclude-type=<TYPE>:不要顯示指定檔案系統型別的磁盤資訊
Linux mount 命令
mount 命令用于將指定的檔案系統或磁區掛載到指定目錄下,常用于掛載光碟,訪問光碟的資料,光碟并不會自動掛載到目錄中,所以需要手動掛載(必須要先確保系統已經成功連接光碟),
【用法】
mount [-t vfstype] [-o options] device dir
【引數說明】
vfstype:指定掛載的檔案系統型別(一般不用指定,因為 mount 命令能夠自行判斷),常用型別有:
光碟或光碟鏡像:iso9660
DOS fat16檔案系統:msdos
Windows 9x fat32檔案系統:vfat
Windows NT ntfs檔案系統:ntfs
Mount Windows檔案網路共享:smbfs
UNIX(LINUX) 檔案網路共享:nfs
options:指定掛載引數(如:ro 表示以只讀方式掛載檔案系統),常用引數有:
loop:用來把一個檔案當成硬碟磁區掛接上系統
ro:采用只讀方式掛接設備
rw:采用讀寫方式掛接設備
iocharset:指定訪問檔案系統所用字符集
device:指定要掛載的設備(如:磁盤、光驅等)
dir:指定檔案系統要掛載到哪個目錄
【常用選項】
-a、--all:掛載 /etc/fstab 中的所有檔案系統
-f、--fake:不實際加載設備,可與 -v 等引數同時使用以查看 mount 的執行程序
-F、--fork:需與 -a 引數同時使用,所有在 /etc/fstab 中設定的設備會被同時加載,可加快執行速度
-L<標簽> 加載檔案系統標簽為<標簽>的設備
-n、--no-mtab:不將加載資訊記錄在 /etc/mtab 檔案中
-o、--options <串列>:掛載選項串列,如下:
defaults:使用默認的選項,默認選項為 rw、suid、dev、exec、anto nouser 與 async
async:以非同步的方式執行檔案系統的輸入輸出動作
sync:以同步方式執行檔案系統的輸入輸出動作
user:可以讓一般用戶加載設備
nouser:使一位用戶無法執行加載操作,默認設定
atime:每次存取都更新 inode 的存取時間,默認設定,取消選項為 noatime
noatime:每次存取時不更新 inode 的存取時間
auto:必須在 /etc/fstab 檔案中指定此選項,執行 -a 引數時,會加載設定為 auto 的設備,取消選取為 noauto
noauto:無法使用 -a 引數來加載
dev:可讀檔案系統上的字符或塊設備,取消選項為 nodev
nodev:不讀檔案系統上的字符或塊設備
exec:可執行二進制檔案,取消選項為 noexec
noexec:無法執行二進制檔案
remount:重新加載設備,通常用于改變設備的設定狀態
ro:以只讀模式加載
rw:以可讀寫模式加載
suid:啟動 set-user-identifier(設定用戶ID) 與 set-group-identifer(設定組ID) 設定位,取消選項為 nosuid
nosuid:關閉 set-user-identifier(設定用戶ID) 與 set-group-identifer(設定組ID) 設定位
-r、--read-only:以只讀方式掛載檔案系統(同 -o ro)
-c、--no-canonicalize:不對路徑規范化
【示例】
mount /dev/cdrom /mnt/cdrom 或 mount /dev/sr0 /mnt/cdrom:將光碟掛載到 /mnt/cdrom/
umount /mnt/cdrom 或 umount /dev/sr0:解除掛載(不能在掛載點目錄下解除掛載,必須先切換到其他目錄)
Linux vim 編輯器常用命令
【用法】
vim fileName:打開或新建檔案,并將游標置于第一行首
vim +n fileName:打開檔案,并將游標置于第 n 行首
vim + fileName:打開檔案,并將游標置于最后一行首
vim +/pattern fileName:打開檔案,并將游標置于第一個與 pattern 匹配的串處
vim -r fileName:在上次使用 vi 編輯檔案發生系統崩潰時恢復 fileName
vim fileName1……fileNameX:打開多個檔案,依次進行編輯
【移動游標類命令】
h、Backspace:游標左移一個字符
l、space:游標右移一個字符
k、Ctrl+p:游標上移一行
j、Ctrl+n、Enter:游標下移一行
w、W:游標右移一個字至字首
b、B:游標左移一個字至字首
e、E:游標右移一個字至字尾
) :游標移至句尾
( :游標移至句首
}:游標移至段落開頭
{:游標移至段落結尾
nG:游標移至第 n 行首
n$:游標移至第 n 行尾
n+:游標下移 n 行
n-:游標上移 n 行
H:游標移至螢屏頂行
M:游標移至螢屏中間行
L:游標移至螢屏最后行
0:游標移至當前行首
$:游標移至當前行尾
【螢屏翻滾類命令】
Ctrl+u:向檔案首翻半屏
Ctrl+d:向檔案尾翻半屏
Ctrl+f:向檔案尾翻一屏
Ctrl+b;向檔案首翻一屏
nz:將第 n 行滾至螢屏頂部,不指定 n 時將當前行滾至螢屏頂部
【插入文本類命令】
Esc:退出插入模式
i:從當前游標處進入插入模式
a:追加模式,置游標于當前游標之后
I:進入插入模式,置游標于行首
A:追加模式,置游標于行末
o:在當前行之下新加一行,并進入插入模式
O:在當前行之上新加一行,并進入插入模式
r:替換當前字符
R:替換當前字符及其后的字符,直至按 ESC 鍵
s:從當前游標位置處開始,以輸入的文本替代指定數目的字符
S:洗掉指定數目的行,并以所輸入文本代替之
ncw、nCW:修改指定數目的字
nCC:修改指定數目的行
【洗掉命令】
ndw、ndW:洗掉游標處開始及其后的 n-1 個字
do:刪至行首
d$:刪至行尾
ndd:洗掉當前行及其后 n-1 行
x:洗掉游標后的一個字符
X:洗掉游標前的一個字符
Ctrl+u:洗掉輸入方式下所輸入的文本
【搜索及替換命令】
ra:將當前字符(即游標所在字符)替換為a(a 是示例,實際是要替換的目標資料)
/pattern:從游標開始處向檔案尾搜索 pattern
?pattern:從游標開始處向檔案首搜索 pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
:s/p1/p2/:將當前行中第一個 p1 用 p2 替代
:s/p1/p2/g:將當前行中所有 p1 用 p2 替代
:%s/p1/p2/:將所有行中第一個 p1 用 p2 替代
:%s/p1/p2/g:將檔案中所有 p1 用 p2 替代
:g/p1/s//p2/g:將檔案中所有 p1 用 p2 替換
:n1,n2s/p1/p2/g:將第 n1 至 n2 行中所有 p1 用 p2 替代
【最后行方式命令】
:e fileName:打開檔案 fileName 進行編輯
:n1,n2 co n3:將 n1 行到 n2 行之間的內容拷貝到第 n3 行下
:n1,n2 m n3:將 n1 行到 n2 行之間的內容移至到第 n3 行下
:n1,n2 d:將 n1 行到 n2 行之間的內容洗掉
:w:將緩沖區寫入檔案,即保存修改
:wq:保存修改并退出
:x:保存當前檔案并退出
:q:退出 vi,如果對緩沖區進行過修改,則會提示
:q!:強制退出(不保存檔案)
注:本檔案是根據網路資料、動手實踐整理的,參考文章眾多,若有雷同,純屬巧合!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/80613.html
標籤:Linux
