Linux如何查看進程、殺死進程、啟動進程等常用命令

  • 2019 年 10 月 8 日
  • 筆記

查進程

ps命令查找與進程相關的PID號:  ps a 顯示現行終端機下的所有程式,包括其他用戶的程式。  ps -A 顯示所有程式。  ps c 列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,參數或常駐服務的標示。  ps -e 此參數的效果和指定」A」參數相同。  ps e 列出程式時,顯示每個程式所使用的環境變數。  ps f 用ASCII字元顯示樹狀結構,表達程式間的相互關係。  ps -H 顯示樹狀結構,表示程式間的相互關係。  ps -N 顯示所有的程式,除了執行ps指令終端機下的程式之外。  ps s 採用程式訊號的格式顯示程式狀況。  ps S 列出程式時,包括已中斷的子程式資料。  ps -t<終端機編號> 指定終端機編號,並列出屬於該終端機的程式的狀況。  ps u 以用戶為主的格式來顯示程式狀況。  ps x 顯示所有程式,不以終端機來區分。    常用的方法是ps aux,然後再通過管道使用grep命令過濾查找特定的進程,然後再對特定的進程進行操作。  ps aux | grep program_filter_word,ps -ef |grep tomcat    ps -ef|grep java|grep -v grep 顯示出所有的java進程,去處掉當前的grep進程。  

殺進程

使用kill命令結束進程:kill xxx 常用:kill -9 324 Linux下還提供了一個killall命令,可以直接使用進程的名字而不是進程標識號,例如:# killall -9 NAME

進入到進程的執行文件所在的路徑下,執行文件 ./文件名

附:

更改檔案擁有者  命令 : chown [-cfhvR] [–help] [–version] user[:group] file…  功能 : 更改文件或者文件夾的擁有者  參數格式 :     user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)     -c : 若該檔案擁有者確實已經更改,才顯示其更改動作     -f : 若該檔案擁有者無法被更改也不要顯示錯誤訊息     -h : 只對於連結(link)進行變更,而非該 link 真正指向的檔案     -v : 顯示擁有者變更的詳細資料     -R : 對目前目錄下的所有檔案與子目錄進行相同的擁有者變更(即以遞迴的方式逐個變更)    例如:chown -R oracle:oinstall /oracle/u01/app/oracle  更改目錄擁有者為oracle    修改許可權  命令:chmod (change mode)  功能:改變文件的讀寫和執行許可權。有符號法和八進位數字法。  選項:()符號法:  命令格式:chmod {u|g|o|a}{+|-|=}{r|w|x} filename  u (user) 表示用戶本人。  g (group) 表示同組用戶。  o (oher) 表示其他用戶。  a (all) 表示所有用戶。  + 用於給予指定用戶的許可許可權。  - 用於取消指定用戶的許可許可權。  = 將所許可的許可權賦給文件。  r (read) 讀許可,表示可以拷貝該文件或目錄的內容。  w (write) 寫許可,表示可以修改該文件或目錄的內容。  x (execute)執行許可,表示可以執行該文件或進入目錄。      ()八進位數字法:    命令格式:chmod abc file  其中a,b,c各為一個八進位數字,分別表示User、Group、及Other的許可權。   () 表示可讀。   () 表示可寫。   () 表示可執行。  若要rwx屬性則++=;  若要rw-屬性則+=;  若要r-x屬性則+=。    例如:# chmod a+rx filename  讓所有用戶可以讀和執行文件filename。  # chmod go-rx filename  取消同組和其他用戶的讀和執行文件filename的許可權。  # chmod 741 filename  讓本人可讀寫執行、同組用戶可讀、其他用戶可執行文件filename。  # chmod -R 755 /home/oracle  遞歸更改目錄許可權,本人可讀寫執行、同組用戶可讀可執行、其他用戶可讀可執行  

修改文件日期

命令:touch 格式:touch filenae 功能:改變文件的日期,不對文件的內容做改動,若文件不存在則建立新文件。 例如:% touch file

鏈接文件

命令:ln (link) 格式: ln [option] filename linkname ln [option] directory pathname 功能:為文件或目錄建立一個鏈。其中,filename和directory是源文件名和 源目錄名;linkname和pathname分別表示與源文件或源目錄名相鏈接的 文件或目錄。 選項:-s 為文件或目錄建立符號鏈接。不加-s表示為文件或目錄建立硬鏈接 注釋:鏈接的目地在於,對一個文件或目錄賦予兩個以上的名字,使其可以出 現在不同的目錄中,既可以使文件或目錄共享,又可以節省磁碟空間。 例如:% ln -s filename linkname

顯示日期

命令:date 例如:% date

顯示日曆

命令:cal (calendar) 格式:cal [month] year 功能:顯示某年內指定的日曆 例如:% cal 1998

顯示文件頭部

命令:head 格式:head [option] filename 功能:顯示文件的頭部 選項:預設 顯示文件的頭10行。 -i 顯示文件的開始 i行。 例如:% head filename

顯示文件尾部

命令:tail 格式:tail [option] filename 功能:顯示文件的尾部 選項:預設 顯示文件的末10行。 -i 顯示文件最後 i行。 +i 從文件的第i行開始顯示。 例如:% tail filename

顯示用戶標識

命令:id 格式:id [option] [user] 功能:顯示用戶標識及用戶所屬的所有組。 選項:-a 顯示用戶名、用戶標識及用戶所屬的所有組 注釋: 例如:% id username

查看當前登錄的用戶

命令:users

顯示都誰登錄到機器上

命令:who 格式:who 功能:顯示當前正在系統中的所有用戶名字,使用終端設備號,註冊時間。 例如:% who

顯示當前終端上的用戶名

命令:whoami 格式:whoami 功能:顯示出當前終端上使用的用戶。 例如:% whoami

尋找文件

命令:find 格式:find pathname [option] expression 功能:在所給的路經名下尋找符合表達式相匹配的文件。 選項: -name 表示文件名 -user 用戶名,選取該用戶所屬的文件 -size 按大小查找,以block為單位,一個block是512B -mtime n 按最後一次修改時間查找,選取n天內被修改的文件

-perm 按許可權查找 -type 按文件類型查找 -atime 按最後一次訪問時間查找

例如:% find ./ -name '*abc*' -print

搜索文件中匹配符

命令:grep 格式:grep [option] pattern filenames 功能:逐行搜索所指定的文件或標準輸入,並顯示匹配模式的每一行。 選項:-i 匹配時忽略大小寫

-v找出模式失配的行

例如:% grep -i 'java*' ./test/run.sh

統計文件字數

命令:wc [option] filename 功能:統計文件中的文件行數、字數和字元數。 選項:-l 統計文件的行數

-w 統計文件的單詞數 -c 統計文件的字元數 注釋:若預設文件名則指標準輸入 例如:% wc -c ./test/run.sh

顯示磁碟空間

命令:df (disk free) 格式:df [option] 功能:顯示磁碟空間的使用情況,包括文件系統安裝的目錄名、塊設備名、總 位元組數、已用位元組數、剩餘位元組數佔用百分比。 選項:

-a:顯示全部的檔案系統和各分割區的磁碟使用情形 -i:顯示i -nodes的使用量 -k:大小用k來表示 (默認值) -t:顯示某一個檔案系統的所有分割區磁碟使用量 -x:顯示不是某一個檔案系統的所有分割區磁碟使用量 -T:顯示每個分割區所屬的檔案系統名稱 -h: 表示使用「Human-readable」的輸出,也就是在檔案系統大小使用 GB、MB 等易讀的格式。 注釋: 例如:% df -hi

查詢檔案或目錄的磁碟使用空間

命令:du (disk usage) 格式:du [option] [filename] 功能:以指定的目錄下的子目錄為單位,顯示每個目錄內所有檔案所佔用的磁碟空間大小 選項:

-a:顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間 -b:大小用bytes來表示 (默認值為k bytes) -c:最後再加上總計 (默認值) -s:只顯示各檔案大小的總合 -x:只計算同屬同一個檔案系統的檔案 -L:計算所有的檔案大小 -h: 表示檔案系統大小使用 GB、MB 等易讀的格式。 例如:% du -a % du -sh /etc 只顯示該目錄的總合 % du /etc | sort -nr | more 統計結果用sort 指令進行排序, sort 的參數 -nr 表示要以數字排序法進行反向排序。

顯示進程

命令:ps 格式:ps [option] 功能:顯示系統中進程的資訊。包括進程ID、控制進程終端、執行時間和命令。 選項:

-a 顯示所有進程資訊 -U uidlist 列出這個用戶的所有進程 -e 顯示當前運行的每一個進程資訊 -f 顯示一個完整的列表 -x 顯示包括沒有終端控制的進程狀況 。 注釋: 例如:% ps -ef % ps -aux 然後再利用一個管道符號導向到grep去查找特定的進程,然後再對特定的進程進行操作。

終止進程

命令:kill 格式:kill [option] pid 功能:向指定的進程送訊號或終止進程。kill指令的用途是送一個signal給某一個process, 因為大部份送的都是用來殺掉 process 的 SIGKILL 或 SIGHUP ,因此稱為 kill 選項:-9 強行終止進程 注釋:pid標示進程號,可由ps命令得到。 例如:% kill -9 pid 你也可以用 kill -l 來察看可代替 signal 號碼的數目字。kill 的詳細情形請參閱 man kill。

查看自己的IP地址

命令:ifconfig 格式:ifconfig -a

查看路由表

命令:netstat 格式:netstat -rn

遠程登錄

命令:telnet 格式:telnet hostname

文件傳輸

命令:ftp (file transfer program) 格式:ftp hostname 功能:網路文件傳輸及遠程操作。 選項: ftp命令:

  ` cd [dirname]`  進入遠程機的目錄    `lcd [dirname]` 設置本地機的目錄    ` dir/ls `       顯示遠程的目錄文件    ` bin `          以二進位方式進行傳輸  

asc 以文本文件方式進行傳輸 get/mget 從遠程機取一個或多個文件 put/mput 向遠程機送一個或多個文件 prompt 打開或關閉多個文件傳送時的交互提示 close 關閉與遠程機的連接 quit 退出ftp !/exit ftp登陸狀態下,!表示暫時退出ftp狀態回到本地目錄,exit表示返回ftp狀態 注釋: 例如:% ftp hostname

查看自己的電子郵件

命令:mailx 格式:mailx 選項: delete 刪除 next 下一個 quit 退出 reply 回復

回憶命令

命令:history 格式:history 功能:幫助用戶回憶執行過的命令。 例如:% history

網上對話

命令:talk 格式:talk username 功能:在網上與另一用戶進行對話。 選項: 注釋:對話時系統把終端分為上下兩部分,上半部顯示自己鍵入資訊,下半部 顯示對方用戶鍵入的資訊。鍵入delete或Ctrl+C則結束對話。 例如:% talk username

允許或拒絕接受資訊

命令:mesg (message) 格式:mesg [n/y] 功能:允許或拒絕其它用戶向自己所用的終端發送資訊。 選項: n 拒絕其它用戶向自己所用的終端寫資訊 y 允許其它用戶向自己所用的終端寫資訊(預設值) 注釋: 例如:% mesg n

給其他用戶寫資訊

命令:write 格式:write username [ttyname] 功能:給其他用戶的終端寫資訊。 選項: 注釋:若對方沒有拒絕,兩用戶可進行交談,鍵入EOFCtrl+C則結束對話。 例如:write username

創建、修改、刪除用戶和群組

a. 創建群組:

例如:groupadd oinstall 創建群組名為oinstall的組  groupadd -g 344 dba  創建組號是344的組,此時在/etc/passwd文件中產生一個組ID(GID)是344的項目。  

b. 修改群組:

groupmod:該命令用於改變用戶組帳號的屬性  groupmod –g 新的GID 用戶組帳號名  groupmod –n 新組名 原組名:此命令由於改變用戶組的名稱  

c. 刪除群組:

groupdel 組名:該命令用於刪除指定的組帳號  

d. 新建用戶:

命令:useradd [-d home] [-s shell] [-c comment] [-m [-k template]]  [-f inactive] [-e expire ] [-p passwd] [-r] name  主要參數  -c:加上備註文字,備註文字保存在passwd的備註欄中。   -d:指定用戶登入時的啟始目錄。  -D:變更預設值。  -e:指定帳號的有效期限,預設表示永久有效。  -f:指定在密碼過期後多少天即關閉該帳號。  -g:指定用戶所屬的群組。  -G:指定用戶所屬的附加群組。  -m:自動建立用戶的登入目錄。  -M:不要自動建立用戶的登入目錄。  -n:取消建立以用戶名稱為名的群組。  -r:建立系統帳號。  -s:指定用戶登入後所使用的shell。  -u:指定用戶ID號。    舉例: # useradd -g oinstall -G dba oracle 創建Oracle用戶  

e. 刪除用戶

命令:userdel 用戶名  刪除指定的用戶帳號  userdel –r 用戶名(userdel 用戶名;rm 用戶名):刪除指定的用戶帳號及宿主目錄  例:#useradd -g root kkk //把kkk用戶加入root組裡  

f. 修改用戶

命令:usermod  修改已有用戶的資訊  usermod –l 舊用戶名 新用戶名: 修改用戶名  usermod –L 用戶名: 用於鎖定指定用戶帳號,使其不能登陸系統  usermod –U 用戶名: 對鎖定的用戶帳號進行解鎖  passwd –d 用戶名: 使帳號無口令,即用戶不需要口令就能登錄系統  例:#usermod -l user2 user1 //把用戶user2改名為user1  

啟動、關閉防火牆

永久打開或則關閉

chkconfig iptables on  chkconfig iptables off  

即時生效:重啟後還原

service iptables start  service iptables stop  

或者:

/etc/init.d/iptables start  /etc/init.d/iptables stop  

啟動VSFTP服務

即時啟動:/etc/init.d/vsftpd start 即時停止:/etc/init.d/vsftpd stop

開機默認VSFTP服務自動啟動: 方法一:(常用方便)

[root@localhost etc]# chkconfig –list|grep vsftpd ( 查看情況)  vsftpd :off :off :off :off :off :off :off  [root@localhost etc]# chkconfig vsftpd on (執行ON設置)  

方法二:

修改文件 /etc/rc.local , 把行/usr/local/sbin/vsftpd & 插入文件中,以實現開機自動啟動  

vi技巧

a. 進入輸入模式 新增 (append)

a :從游標所在位置後面開始新增資料,游標後的資料隨新增資料向後移動。  A:從游標所在列最後面的地方開始新增資料。  

插入 (insert)

i:從游標所在位置前面開始插入資料,游標後的資料隨新增資料向後移動。  I :從游標所在列的第一個非空白字元前面開始插入資料。    開始 (open)  o :在游標所在列下新增一列並進入輸入模式。  O: 在游標所在列上方新增一列並進入輸入模式。  b. 退出vi  在指令模式下鍵入:q,:q!,:wq或:x(注意:號),就會退出vi。其中:wq和:x是存檔退出,而:q是直接退出,如果文件  已有新的變化,vi會提示你保存文件而:q命令也會失效,這時你可以用:w命令保存文件後再用:q 退出,或用:wq或:x命  令退出,如果你不想保存改變後的文件,你就需要用:q!命令,這個命令將不保存文件而直接退出vi。  

c. 刪除與修改文件的命令:

x:刪除游標所在字元。  dd :刪除游標所在的列。  r :修改游標所在字元,r 後接著要修正的字元。  R:進入取替換狀態,新增文字會覆蓋原先文字,直到按 [ESC] 回到指令模式下為止。  s:刪除游標所在字元,並進入輸入模式。  S:刪除游標所在的列,並進入輸入模式。  

d. 螢幕翻滾類命令

Ctrl+u: 向文件首翻半屏  Ctrl+d: 向文件尾翻半屏  Ctrl+f: 向文件尾翻一屏  Ctrl+b: 向文件首翻一屏  nz: 將第n行滾至螢幕頂部,不指定n時將當前行滾至螢幕頂部。  

e. 刪除命令

ndw或ndW: 刪除游標處開始及其後的n-1個字  do: 刪至行首  d$: 刪至行尾  ndd: 刪除當前行及其後n-1行  x或X: 刪除一個字元,x刪除游標後的,而X刪除游標前的  Ctrl+u: 刪除輸入方式下所輸入的文本  

f. 搜索及替換命令

/pattern: 從游標開始處向文件尾搜索pattern  ?pattern: 從游標開始處向文件首搜索pattern  n: 在同一方向重複上一次搜索命令  N: 在反方向上重複上一次搜索命令  :s/p1/p2/g: 將當前行中所有p1均用p2替代  :n1,n2s/p1/p2/g: 將第n1至n2行中所有p1均用p2替代  :g/p1/s//p2/g: 將文件中所有p1均用p2替換  

g. 複製,黏貼

(1) 選定文本塊,使用v進入可視模式;移動游標鍵選定內容  (2) 複製選定塊到緩衝區,用y;複製整行,用yy  (3) 剪切選定塊到緩衝區,用d;剪切整行用dd  (4) 粘貼緩衝區中的內容,用p  

h. 其他

在同一編輯窗打開第二個文件,用:sp [filename]  在多個編輯文件之間切換,用Ctrl+w