天天看點

Linux如何檢視程序、殺死程序、啟動程序等常用指令

關鍵字: linux 查程序、殺程序、起程序

1.查程序

    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程序。

2.殺程序

   使用kill指令結束程序:kill xxx

   常用:kill -9 324

   Linux下還提供了一個killall指令,可以直接使用程序的名字而不是程序辨別号,例如:# killall -9 NAME

3.進入到程序的執行檔案所在的路徑下,執行檔案 ./檔案名

附:

這是本人花了兩天時間整理得來的,一些最常用的地球人都知道的指令就省去啦!最後提供pdf手冊下載下傳

1. 更改檔案擁有者

指令 : 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

2. 修改權限

    指令:chmod (change mode)

    功能:改變檔案的讀寫和執行權限。有符号法和八進制數字法。

    選項:(1)符号法:

  指令格式:chmod {u|g|o|a}{+|-|=}{r|w|x} filename

          u (user)   表示使用者本人。

          g (group)  表示同組使用者。

          o (oher)   表示其他使用者。

          a (all)    表示所有使用者。

          +          用于給予指定使用者的許可權限。

          -          用于取消指定使用者的許可權限。

          =          将所許可的權限賦給檔案。

          r (read)   讀許可,表示可以拷貝該檔案或目錄的内容。

          w (write)  寫許可,表示可以修改該檔案或目錄的内容。

          x (execute)執行許可,表示可以執行該檔案或進入目錄。

          (2)八進制數字法:  

  指令格式:chmod abc file

  其中a,b,c各為一個八進制數字,分别表示User、Group、及Other的權限。

          4 (100)    表示可讀。

          2 (010)    表示可寫。

          1 (001)    表示可執行。

  若要rwx屬性則4+2+1=7;

  若要rw-屬性則4+2=6;

  若要r-x屬性則4+1=5。

    例如:# chmod a+rx filename

            讓所有使用者可以讀和執行檔案filename。

          # chmod go-rx filename

            取消同組和其他使用者的讀和執行檔案filename的權限。

          # chmod 741 filename

            讓本人可讀寫執行、同組使用者可讀、其他使用者可執行檔案filename。

  # chmod -R 755 /home/oracle

    遞歸更改目錄權限,本人可讀寫執行、同組使用者可讀可執行、其他使用者可讀可執行

3. 修改檔案日期

    指令:touch

    格式:touch filenae

    功能:改變檔案的日期,不對檔案的内容做改動,若檔案不存在則建立新檔案。

    例如:% touch file

4. 連結檔案

    指令:ln (link)

    格式:ln [option] filename linkname

          ln [option] directory pathname

    功能:為檔案或目錄建立一個鍊。其中,filename和directory是源檔案名和

          源目錄名;linkname和pathname分别表示與源檔案或源目錄名相連結的

          檔案或目錄。

    選項:-s  為檔案或目錄建立符号連結。不加-s表示為檔案或目錄建立硬連結

    注釋:連結的目地在于,對一個檔案或目錄賦予兩個以上的名字,使其可以出

          現在不同的目錄中,既可以使檔案或目錄共享,又可以節省磁盤空間。

    例如:% ln -s filename linkname

5. 顯示日期

    指令:date

    例如:% date

6. 顯示月曆

    指令:cal (calendar)

    格式:cal [month] year

    功能:顯示某年内指定的月曆

    例如:% cal 1998 

7. 顯示檔案頭部

    指令:head

    格式:head [option] filename

    功能:顯示檔案的頭部

    選項:預設  顯示檔案的頭10行。

          -i    顯示檔案的開始 i行。

    例如:% head filename

8. 顯示檔案尾部

    指令:tail

    格式:tail [option] filename

    功能:顯示檔案的尾部

    選項:預設  顯示檔案的末10行。

          -i    顯示檔案最後 i行。

          +i    從檔案的第i行開始顯示。

    例如:% tail filename

9. 顯示使用者辨別

    指令:id

    格式:id [option] [user]

    功能:顯示使用者辨別及使用者所屬的所有組。

    選項:-a 顯示使用者名、使用者辨別及使用者所屬的所有組

    注釋:

    例如:% id username

10. 檢視目前登入的使用者

    指令:users

11. 顯示都誰登入到機器上

    指令:who

    格式:who

    功能:顯示目前正在系統中的所有使用者名字,使用終端裝置号,注冊時間。

    例如:% who

12. 顯示目前終端上的使用者名

    指令:whoami

    格式:whoami

    功能:顯示出目前終端上使用的使用者。

    例如:% whoami

13. 尋找檔案

    指令:find

    格式:find pathname [option] expression

    功能:在所給的路經名下尋找符合表達式相比對的檔案。

    選項:-name     表示檔案名

          -user     使用者名,選取該使用者所屬的檔案

          -size     按大小查找,以block為機關,一個block是512B

          -mtime n  按最後一次修改時間查找,選取n天内被修改的檔案

  -perm     按權限查找

          -type     按檔案類型查找

  -atime    按最後一次通路時間查找

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

14. 搜尋檔案中比對符

    指令:grep

    格式:grep [option] pattern filenames

    功能:逐行搜尋所指定的檔案或标準輸入,并顯示比對模式的每一行。

    選項:-i    比對時忽略大小寫

  -v 找出模式失配的行

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

15. 統計檔案字數

    指令:wc [option] filename

    功能:統計檔案中的檔案行數、字數和字元數。

    選項:-l 統計檔案的行數

-w 統計檔案的單詞數

-c 統計檔案的字元數

    注釋:若預設檔案名則名額準輸入

    例如:% wc -c ./test/run.sh

16. 顯示磁盤空間

    指令:df (disk free)

    格式:df [option]

    功能:顯示磁盤空間的使用情況,包括檔案系統安裝的目錄名、塊裝置名、總

          位元組數、已用位元組數、剩餘位元組數占用百分比。

    選項:

-a:顯示全部的檔案系統和各分割區的磁盤使用情形

-i:顯示i -nodes的使用量

-k:大小用k來表示 (預設值)

-t:顯示某一個檔案系統的所有分割區磁盤使用量

-x:顯示不是某一個檔案系統的所有分割區磁盤使用量

-T:顯示每個分割區所屬的檔案系統名稱

-h: 表示使用「Human-readable」的輸出,也就是在檔案系統大小使用 GB、MB 等易讀的格式。

    例如:% df -hi

17. 查詢檔案或目錄的磁盤使用空間

    指令: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 表示要以數字排序法進行反向排序。

18. 顯示程序

    指令:ps

    格式:ps [option]

    功能:顯示系統中程序的資訊。包括程序ID、控制程序終端、執行時間和指令。

  -a 顯示所有程序資訊

  -U uidlist 列出這個使用者的所有程序

          -e 顯示目前運作的每一個程序資訊

          -f 顯示一個完整的清單

  -x 顯示包括沒有終端控制的程序狀況 。

    例如:% ps -ef

  % ps -aux 然後再利用一個管道符号導向到grep去查找特定的程序,然後再對特定的程序進行操作。

19. 終止程序

    指令:kill

    格式:kill [option] pid

    功能:向指定的程序送信号或終止程序。kill指令的用途是送一個signal給某一個process,

    因為大部份送的都是用來殺掉 process 的 SIGKILL 或 SIGHUP ,是以稱為 kill 

    選項:-9  強行終止程序

    注釋:pid标示程序号,可由ps指令得到。

    例如:% kill -9 pid

    你也可以用 kill -l 來察看可代替 signal 号碼的數目字。kill 的詳細情形請參閱 man kill。

20. 檢視自己的IP位址

    指令:ifconfig

    格式:ifconfig -a

21. 檢視路由表

    指令:netstat

    格式:netstat -rn

22. 遠端登入

    指令:telnet

    格式:telnet hostname

23. 檔案傳輸

    指令: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

24. 檢視自己的電子郵件

    指令:mailx

    格式:mailx

delete  删除

next    下一個

quit    退出

         reply   回複   

25. 回憶指令

    指令:history

    格式:history

    功能:幫助使用者回憶執行過的指令。

    例如:% history

26. 網上對話

    指令:talk

    格式:talk username

    功能:在網上與另一使用者進行對話。

    注釋:對話時系統把終端分為上下兩部分,上半部顯示自己鍵入資訊,下半部

          顯示對方使用者鍵入的資訊。鍵入delete或Ctrl+C則結束對話。

    例如:% talk username

27. 允許或拒絕接受資訊

    指令:mesg (message)

    格式:mesg [n/y]

    功能:允許或拒絕其它使用者向自己所用的終端發送資訊。

    選項:n 拒絕其它使用者向自己所用的終端寫資訊

          y 允許其它使用者向自己所用的終端寫資訊(預設值)

    例如:% mesg n

28. 給其他使用者寫資訊

    指令:write

    格式:write username [ttyname]

    功能:給其他使用者的終端寫資訊。

    注釋:若對方沒有拒絕,兩使用者可進行交談,鍵入EOF或Ctrl+C則結束對話。

    例如:write username

29. 建立、修改、删除使用者和群組

    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

30. 啟動、關閉防火牆

永久打開或則關閉

chkconfig iptables on

chkconfig iptables off

即時生效:重新開機後還原

service iptables start

service iptables stop

     或者:

/etc/init.d/iptables start

/etc/init.d/iptables stop

31. 啟動VSFTP服務

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

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

開機預設VSFTP服務自動啟動:

方法一:(常用\友善)

[root@localhost etc]# chkconfig --list|grep vsftpd ( 檢視情況)

vsftpd          0:off   1:off   2:off   3:off   4:off   5:off   6:off

[root@localhost etc]# chkconfig vsftpd on  (執行ON設定)

或者:方法二:

修改檔案 /etc/rc.local , 把行/usr/local/sbin/vsftpd & 插入檔案中,以實作開機自動啟動。

32. 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

繼續閱讀