前言
linux指令是對Linux系統進行管理的指令。對于Linux系統來說,無論是中央處理器、記憶體、磁盤驅動器、鍵盤、滑鼠,還是使用者等都是檔案,Linux系統管理的指令是它正常運作的核心,與之前的DOS指令類似。linux指令在系統中有兩種類型:内置Shell指令和Linux指令。想要在Linux系統之中随心所欲的行走那就離不開掌握常用的Linux指令,下面就以ubuntu下的指令為例整理的Linux常用的指令。
目錄
- 正文
- 一檔案目錄操作指令
-
- 1 lslist清單
- 2 cdchange directory更改目錄
- 3 pwdprint work directory列印工作目錄
- 4 mkdirmake directory建立檔案夾
- 5 mvmove移動
- 6 touch
- 7 cpcopy複制
- 8 rmremove去除删除
- 9 cat
- 10rmdirremove directory删除檔案夾
- 11nl
- 12more
- 13less
- 14head
- 15tail
- 16 lnlink連接配接檔案
- 17 man
- 18 apt-get
-
- 檔案查找指令
-
- 1 which
- 2 whereis
- 3 locate
- 4 find
-
- 三vim編輯器常用指令
-
- 1 儲存退出
- 2 查找
- 3 快速切換行
- 4 設定顯示行号
- 5 行删除
- 6 行複制粘貼
-
- 一檔案目錄操作指令
一、檔案目錄操作指令
(1) ls(list,清單)
作用:列出目标目錄中所有的子目錄和檔案。
用法:
1 ls [選項] [目錄名]
2
3 ls -a 顯示所有檔案,包括隐藏檔案
4 ls -l 以詳細資訊顯示
5 ls -a -l
6 ls -l -a
7 ls -la
8 ls -al 四種方式都是可以的
ls -l顯示的詳細資訊中:
1 -rw-r--r--
2
3 drwxr-xr-x
一共10個字元,第一個字元表示檔案類型,後面9個字元表示檔案權限。
檔案類型:
-:表示普通檔案。普通檔案指文本檔案和二進制檔案,如a.c 1.txt a.out都是普通檔案
d:表示檔案夾,d是directory的縮寫
l:表示符号連接配接檔案,後面會用->列印出它指向的檔案
s:表示socket檔案
p:表示管道檔案 pipe
(2) cd(change directory,更改目錄)
作用:用來切換目錄
1 cd [目錄名]
涉及到相對路徑和絕對路徑
1 / 代表系統根目錄
2 ~ 代表使用者所在目錄
3 - 代表前一次目錄
4 .. 代表上一層目錄
5 . 代表目前目錄
(3) pwd(print work directory,列印工作目錄)
作用:檢視”目前工作目錄“的完整路徑
pwd [選項]
格式:pwd -P 顯示出實際路徑,而非使用連接配接(link)路徑。
(4) mkdir(make directory,建立檔案夾)
作用:建立空檔案夾
1 mkdir [選項] 目錄...
指令參數:
1 -m, --mode=模式,設定權限<模式> (類似 chmod),而不是 rwxrwxrwx 減 umask
2 -p, --parents 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統将自動建立好那些尚不存在的目錄,即一次可以建立多個目錄;
3 -v, --verbose 每次建立新目錄都顯示資訊
4 --help 顯示此幫助資訊并退出
5 --version 輸出版本資訊并退出
(5) mv(move,移動)
作用:在目錄間移動檔案,重命名檔案
1 mv [選項] 源檔案或目錄 目标檔案或目錄
指令參數:
1 -b :若需覆寫檔案,則覆寫前先行備份。
2 -f :force 強制的意思,如果目标檔案已經存在,不會詢問而直接覆寫;
3 -i :若目标檔案 (destination) 已經存在時,就會詢問是否覆寫!
4 -u :若目标檔案已經存在,且 source 比較新,才會更新(update)
5 -t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目錄,該選項适用于移動多個源檔案到一個目錄的情況,此時目标目錄在前,源檔案在後。
(6) touch
作用:建立空檔案
touch [選項]... 檔案...
指令參數:
1 -a 或--time=atime或--time=access或--time=use 隻更改存取時間。
2 -c 或--no-create 不建立任何文檔。
3 -d 使用指定的日期時間,而非現在的時間。
4 -f 此參數将忽略不予處理,僅負責解決BSD版本touch指令的相容性問題。
5 -m 或--time=mtime或--time=modify 隻更改變動時間。
6 -r 把指定文檔或目錄的日期時間,統統設成和參考文檔或目錄的日期時間相同。
7 -t 使用指定的日期時間,而非現在的時間。
(7) cp(copy,複制)
作用:複制檔案或檔案夾
1 cp [選項]... [-T] 源 目的
2 或:cp [選項]... 源... 目錄
3 或:cp [選項]... -t 目錄 源...
4
5 cp -r 用來複制檔案夾
6 cp -f 強制複制
實際操作時:一般都是cp -f複制檔案,cp -rf複制檔案夾
(8) rm(remove,去除,删除)
作用:用來删除檔案,檔案夾
rm [選項] 檔案…
1 -r, -R, --recursive 訓示rm将參數中列出的全部目錄和子目錄均遞歸地删除。
2 -f, --force 忽略不存在的檔案,從不給出提示。
3 -i, --interactive 進行互動式删除
4 -r, -R, --recursive 訓示rm将參數中列出的全部目錄和子目錄均遞歸地删除。
常用:
rm -r 檔案
rm -rf 檔案夾
(9) cat
作用:直接在指令行下顯示檔案内容
1 cat [選項] [檔案]...
cat主要有三大功能:
1 1.一次顯示整個檔案:cat filename
2 2.從鍵盤建立一個檔案:cat > filename 隻能建立新檔案,不能編輯已有檔案.
3 3.将幾個檔案合并為一個檔案:cat file1 file2 > file
(10)rmdir(remove directory,删除檔案夾)
作用:删除空檔案夾
rmdir [選項]... 目錄...
1 -p 遞歸删除目錄dirname,當子目錄删除後其父目錄為空時,也一同被删除。
2 -v, --verbose 顯示指令執行過程
rmdir和rm -r的差別:rmdir隻能删除空檔案夾,而rm -r可以删除空檔案夾和非空檔案夾
(11)nl
作用:顯示行号檢視檔案内容
1 nl [選項]... [檔案]...
(12)more
作用:more指令和cat的功能一樣都是檢視檔案裡的内容,但有所不同的是more可以按頁來檢視檔案的内容,還支援直接跳轉行等功能。
1 more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
(13)less
作用:less 與 more 類似,但使用 less 可以随意浏覽檔案,而 more 僅能向前移動,卻不能向後移動,而且 less 在檢視之前不會加載整個檔案。
1 less [參數] 檔案
(14)head
1 head [參數]... [檔案]...
1 -q 隐藏檔案名
2 -v 顯示檔案名
3 -c<位元組> 顯示位元組數
4 -n<行數> 顯示的行數
(15)tail
作用:用于顯示指定檔案末尾内容,不指定檔案時,作為輸入資訊進行處理。常用檢視日志檔案。
tail[必要參數][選擇參數][檔案]
1 -f 循環讀取
2 -q 不顯示處理資訊
3 -v 顯示詳細的處理資訊
4 -c<數目> 顯示的位元組數
5 -n<行數> 顯示行數
6 --pid=PID 與-f合用,表示在程序ID,PID死掉之後結束.
7 -q, --quiet, --silent 從不輸出給出檔案名的首部
8 -s, --sleep-interval=S 與-f合用,表示在每次反複的間隔休眠S秒
(16) ln(link,連接配接檔案)
基礎:windows中快捷方式,實際上快捷方式和它指向的檔案是獨立的兩個檔案,兩個都占硬碟空間,隻不過使用者通路快捷方式時,其效果等同于通路指向的檔案。
作用:建立軟連接配接檔案
1 ln -s 源檔案名 符号連接配接檔案名
舉例:ln -s src.c,linker.c, linker.c就是
src.c的一個符号連接配接檔案
linux中有兩種連接配接檔案:
一種叫軟連接配接(符号連接配接),等同于windows中快捷方式,一種叫硬連接配接
硬連接配接:ln 源檔案名 連接配接檔案名
硬連接配接實際上和源檔案在硬碟中是同一個東西,效果類似于硬碟上的一個檔案,在檔案系統上,在我們看來有好多個檔案一樣。每次删除一個檔案時,隻要他還有其他的硬連接配接存在,這個檔案就不會被真正删除。隻有等所有的連接配接檔案都删除掉了,這個檔案才會被真正從硬碟上删除。
(17) man
作用:查詢man手冊,獲得幫助資訊
1 man 1 ls 1表示查詢的是linux指令
2 man 2 xxx 2表示查詢的是linux api
3 man 3 xxx 3表示查詢的是C庫函數
注意:在man手冊中查詢時,退出按Q鍵(Q就是quit的縮寫)
(18) apt-get
作用:在ubuntu中用來線上安裝、解除安裝軟體的程式
1 apt-get update 更新源
2 apt-get install xxx 安裝軟體
3 apt-get remove xxx 解除安裝軟體
說明:apt-get 安裝軟體的原理和必要性。
linux作業系統的發行版,核心版本,定制性,造成了linux中軟體的不相容性。在linux中安裝軟體是一件困難的事情,裝了軟體能不能用不一定。ubuntu解決了這個問題,ubuntu就适合某個發行版(ubuntu10.04)的所有軟體做了一個清單,然後使用者通過apt-get install的方式安裝軟體,就會實時連接配接到ubuntu伺服器,伺服器會根據你的ubuntu版本,給你下載下傳合适的軟體來安裝。這樣確定了軟體的相容性。
(1) which
作用:which指令會在PATH變量指定的路徑中,搜尋某個系統指令的位置,并且傳回第一個搜尋結果。
1 which 可執行檔案名稱
1 -n 指定檔案名長度,指定的長度必須大于或等于所有檔案中最長的檔案名。
2 -p 與-n參數相同,但此處的包括了檔案的路徑。
3 -w 指定輸出時欄位的寬度。
4 -V 顯示版本資訊
(2) whereis
作用:定位可執行檔案、源代碼檔案、幫助檔案在檔案系統中的位置。
whereis [-bmsu] [BMS 目錄名 -f ] 檔案名
1 -b 定位可執行檔案。
2 -m 定位幫助檔案。
3 -s 定位源代碼檔案。
4 -u 搜尋預設路徑下除可執行檔案、源代碼檔案、幫助檔案以外的其它檔案。
5 -B 指定搜尋可執行檔案的路徑。
6 -M 指定搜尋幫助檔案的路徑。
7 -S 指定搜尋源代碼檔案的路徑。
(3) locate
作用:很快速的搜尋檔案系統内是否有指定的檔案
1 locate [選擇參數] [樣式]
(4) find
作用:用于在檔案樹種查找檔案,并作出相應的處理
1 find pathname -options [-print -exec -ok ...]
三、vim編輯器常用指令
vim是vi的更新版
*使用vi來打開/建立一個檔案,vi pathname
*vi的兩種模式:
指令模式:當vi打開時預設為指令模式,要轉入輸入模式,需要按a或者i鍵。在指令模式下,此時鍵盤上輸入的所有東西都被vi當作指令來對待。
在指令模式下,最好不要亂輸入。此時應該輸入相應的指令,來讓vi做相應的事。
輸入模式:輸入模式用來向檔案輸入内容。可以從指令模式中按a或者i進入輸入模式。進入輸入模式後,就可以随意按鍵盤進行輸入了。輸入完成後如果要儲存,要先退回到指令模式(因為儲存也是一種指令)。在輸入模式下按ESC鍵退回到指令模式。
注:注意看螢幕左下角,當指令模式時無提示資訊或者提示檔案名等資訊,等處于輸入模式時,提示 – INSERT –
(1) 儲存,退出
1 :wq 儲存并且退出
2 :w 隻儲存不推出
3 :q 不儲存退出 進來看了一下沒改退出
4 :q! 不儲存強制退出
5 :wq! 儲存并強制退出
(2) 查找
在指令模式下,輸入/xxx,就可以查找到xxx
(3) 快速切換行
在指令模式下,輸入:num,就可以快速切換到num行
(4) 設定顯示行号
在指令模式下,輸入:set nu,就可以顯示行号
(5) 行删除
(6) 行複制、粘貼
每天一點點,感受自己存在的意義。