Linux命令總結

2022-03-04 23:48:07 字數 4935 閱讀 8941

su和sudo的區別

"su"和"su -"同樣是切換到root使用者,二者之間還是有區別的。

前者只是切換了root身份,但是shell環境仍然是普通使用者的shell;

後者連使用者和shell環境一起切換成了root身份。

sudo執行命令的流程是當前使用者切換到root(或其它執行切換到的使用者),然後以root(或其他執行切換到的使用者)身份執行命令,執行完成後,直接退回到當前使用者。

vii:插入,從目前游標所在之處插入所輸入的文字

o:插入新的一行,從行首開始輸入文字

在插入模式下,只能一直打字,如果發現字打錯了,要先按esc切換回命令模式,再把游標往回移動,最後刪除打錯的字元。刪除有一些命令:

x:每按一次刪除游標所在位置的後面乙個字元,例如6x表示刪除游標所在位置後面的6個字元

dd:刪除游標所在行

這是命令模式,在命令模式下按":"、"/"、"?"都可以進入底線命令模式,底線命令模式下有一些命令:

:w:儲存檔案

ls-a:列出目錄下所有的檔案,包括以"."開頭的隱藏檔案

-l:除了檔名外,還列出檔案許可權、所有者、大小等詳細資訊

-r:反向次序排列

-t:以檔案修改時間排序

-g:類似-l,但是不列出所有者

-h:以容易理解的檔案格式列出(如1k、234m、2g)

例如:ls -l t*:列出所有檔名以"t"開頭的檔案資訊

cdcd /:進入系統根目錄

cd aa/bb/cc:跳轉到指定目錄,注意這裡"aa"前沒有"/",指從當前目錄跳轉到指定目錄

cd ~:進入系統主目錄

pwd,mkdir,rm,mv

- pwd 檢視當前工作目錄的完整路徑

- mkdir

用來建立指定的名稱的目錄,要求建立目錄的使用者在當前目錄中具有寫許可權,並且指定的目錄名不能是當前目錄中已有的目錄

-m:建立目錄的時候設定許可權

-p:若建立目錄的路徑中有些路徑不存在,可一次性地建立多個目錄

例如:mkdir test1:建立乙個空目錄test1

mkdir -p test1/test2:遞迴建立多個目錄

mkdir -m 777 test:在建立目錄test3的時候給此目錄賦予777的許可權

cp,cat,tail

- cp

複製檔案或目錄

例如:cp log.log test6:將log.log複製進入test6目錄下

find

用於在檔案樹中查詢檔案並作相應的處理

-name:按照檔名查詢檔案

-perm:按照檔案許可權查詢檔案

-user:按照檔案屬主來查詢檔案

-group:按照檔案所屬的組來查詢檔案

-mtime<-n><+n>:按照檔案更改時間來查詢檔案,-n表示n天之內,+n表示n天以前

-newer file1 file2:查詢更改時間在file1和file2之間的檔案

例如:find -mtime -2:查詢48小時修改過的檔案

find -name "*.log":查詢當前目錄以"*.log"結尾的檔案

find /opt/soft/test -perm 777:查詢指定目錄下許可權為777的檔案

find -type f -name "*.log":查詢當前目錄下以".log"結尾的普通檔案

find -type d | sort:查詢當前所有目標目錄並排序

chmod

用於改變linux系統檔案或目錄的訪問許可權

-f:錯誤資訊不輸出

-c:當發生改變時,報告處理資訊

-r:處理執行目錄及其子目錄下所有檔案

-v:執行時顯示詳細處理資訊

《許可權範圍》+《許可權設定》:使許可權範圍內的目錄或檔案具有指定許可權

《許可權範圍》-《許可權設定》:刪除許可權範圍內的目錄或檔案的指定許可權

《許可權範圍》=《許可權設定》:設定許可權範圍內的目錄或檔案的許可權為指定的值

許可權範圍

許可權代號

u:目錄或檔案的當前使用者

r:讀,代號為4

u:目錄或檔案的當前使用者

r:讀,代號為4

g:目錄或檔案的當前群組

w:寫,代號為2

o:其他使用者或群組

x:執行,代號為1

a:所有使用者和群組

-:刪除,代號為0

s:特權許可權

例如:chmod a+x log1.log:設定檔案log1.log所有使用者或群組都有執行許可權

chmod ug+x,o-x log1.log:同時設定不同的使用者許可權

chmod u=x log1.log:撤銷使用者原有對log1.log的許可權並設定為x

chmod -r u+x test4:遞迴地給test4下所有檔案與子目錄分配執行許可權

chmod 751 file:給file、屬主分配讀、寫、執行許可權,給所在組分配讀、執行許可權,其他使用者分配執行許可權

tar用來壓縮和解壓檔案,tar本身不具備壓縮功能,它是呼叫壓縮功能實現的

-c:建立新的壓縮檔案

-d:記錄檔案差別

-r:新增檔案到已壓縮的檔案中

-x:從壓縮的檔案中提取檔案

-t:顯示壓縮的檔案內容

-z:支援gzip解壓檔案

-v:顯示操作過程

-f:指定壓縮檔案

例如:tar -cvf log.tar log1.log:僅把log1.log打包成log.tar,不壓縮

tar -zcvf log.tar.gz log1.log:把log1.log打包成log.tar.gz,並指出gzip壓縮

tar -ztvf log.tar.gz:查閱log.tar.gz中的內容,因log.tar.gz是以gzip壓縮的,所以要加上z

tar -zcvf log30.tar.gz log1.log log2.log:把多個檔案打包壓縮成乙個檔案

tar -zxvf log30.tar.gz log2015.log:把log30.tar.gz中的log2015.log解壓出來

grep

用於過濾/搜尋指定字串。可以使用正規表示式,能配合多種命令使用

-a:顯示符合的行及之後的內容

-b:顯示符合的行及之前的內容

-c:顯示符合的行及前後的內容

-c:計算符合的行數目

-i:忽略大小寫

規則表示式

^:'^grep'表示匹配所有以grep開頭的行

$:'grep$'表示匹配所有以grep結尾的行

.:'gr.p'表示匹配'gr'後面接任意字元然後是'p'

*:'*grep'表示匹配乙個或多個空格後緊跟grep的行

:[gg]rep表示匹配grep與grep

[^]:[^a-fh-z]rep表示匹配不以a-f、h-z開頭並緊跟rep的行

例如(grep命令大多數時候多要和別的命令一起使用才有意義):

```python

ps -ef | grep -c svn:查詢指定的程序的個數

cat test.txt | grep -f test2.txt:從text2.txt中讀取關鍵字後在test.txt中搜尋

cat test.txt | grep nf text2.txt:從text2.txt中讀取關鍵字後在text.txt中搜尋並顯示行號

grep 'linux' text.txt test2.txt:從多個檔案中搜尋關鍵字'linux'

cat test.txt | grep -e 'ed|at':顯示包含ed或at的行

ps

用來列出系統中執行的那些程序

| 狀態 | 含義 |

| ----- |:-------------|

|r |執行:正在執行或在執行佇列中等待|

|s |中斷:休眠中,受阻|

|d |不可中斷:收到訊號不喚醒和不可執行,程序必須等待直至有中斷發生|

|z |僵死:程序已終止|

|t |停止:程序收到sigstop、sigstp、sigsin、sigsou訊號後停止執行|

-a:顯示所有程序

-e:等同於-a

-c:顯示程序的真實名稱

-f:顯示程式間的關係

例如:ps -u root:顯示root的程序資訊

ps -ef:顯示所有程序資訊連同其命令列

ps -ef | grep ssh:ps常與grep連贏來顯示特定程序

ps aux:列出目前所有的在記憶體中的程序

netstat

用於顯示各種網路相關資訊,如網路連線、路由表、介面狀態、多播成員等

netstat輸出:

|proto | recv-q| send-q|local address| foreign address |state|

| ---|------|----|:---|:------|:----|

|指協議,有tcp、udp、unix等| 接收佇列| 傳送佇列| 本機位址| 遠端位址| 狀態|

-a:顯示所有選項

-t:僅顯示tcp選項

-u:僅顯示udp選項

-n:不顯示主機別名,能顯示數字的全部顯示數字

-r:顯示路由資訊、路由表

-s:按各種協議進行統計

-l:僅列出listen的服務狀態

例如:netstat -at:列出所有tcp埠

netstat -lt:只列出所有監聽tcp的埠

netstat -s:顯示所有埠的統計資訊

netstat -p:在輸出中顯示pid和程序名稱

> 常用

cat -n log2012.log //帶行號顯示檔案

ls -l -r /home/peidachang //列出所有檔案 -r包含所有子目錄

ps -ef|grep ssh //process status ,ef顯示所有程序資訊,連同命令列,

grep 'linux' test.txt //文字中查詢關鍵字

[參考:五月的倉頡](

Linux命令總結

vi基本命令 i 在當前游標的的所在位置,插入隨後輸入的文字,游標後的文字相應向右移動 i 在游標所在行的行首插入隨後輸入的文字,行首是該行的第乙個非空白字元,相當於游標移動到行首再執行i命令 a 在當前游標所在位置之後,插入隨後輸入的文字 a 在游標所在行的行尾新增隨後輸入的文字,相當於游標移動到...

linux命令總結

登出 exit 關機 shutdown h now 重啟 reboot 幫助 man ls man f ls info ls date y m d 更改檔案使用者組 chgrp r user file d 更改檔案使用者 chown r user file d 更改檔案屬性 chmod r 777 ...

linux命令總結

linux檔案編輯器 vi vim 1 vi 的三種命令模式 command 命令 模式,用於輸入命令 insert 插入 模式,用於插入文字 visual 可視 模式,用於視化的的高亮並選定正文 2 檔案的儲存和退出 command 模式是vi或vim的預設模式,如果我們處於其它命令模式時,要通過...