1. 程式人生 > >: linux 查程序、殺程序、起程序

: 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 | grepprogram_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 -Roracle: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各為一個八進位制數字,分別表示UserGroup、及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 

    功能:為檔案或目錄建立一個鏈。其中,filenamedirectory是原始檔名和 
         
源目錄名;linknamepathname分別表示與原始檔或源目錄名相連結的 
         
檔案或目錄。 
   
選項:-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為單位,一個block512B 
         -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」的輸出,也就是在檔案系統大小使用 GBMB 等易讀的格式。 
   
註釋: 
   
例如:% df -hi 

17.
查詢檔案或目錄的磁碟使用空間 
   
命令:du (disk usage) 
   
格式:du [option] [filename] 
   
功能:以指定的目錄下的子目錄為單位,顯示每個目錄內所有檔案所佔用的磁碟空間大小 
   
選項: 
-a
:顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間 
-b
:大小用bytes來表示 (預設值為k bytes) 
-c
:最後再加上總計 (預設值
-s
:只顯示各檔案大小的總合 
-x
:只計算同屬同一個檔案系統的檔案 
-L
:計算所有的檔案大小 
-h:
表示檔案系統大小使用 GBMB 等易讀的格式。 
   
例如:% 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 
   
功能:在網上與另一使用者進行對話。 
   
選項: 
   
註釋:對話時系統把終端分為上下兩部分,上半部顯示自己鍵入資訊,下半部 
         
顯示對方使用者鍵入的資訊。鍵入deleteCtrl+C則結束對話。 
   
例如:% talk username 

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

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

29.
建立、修改、刪除使用者和群組 
    a.
建立群組: 
例如: groupaddoinstall    建立群組名為oinstall的組 
groupadd -g 344 dba  

建立組號是344的組,此時在/etc/passwd檔案中產生一個組IDGID)是344的專案。 
    b.
修改群組: 
groupmod:
該命令用於改變使用者組帳號的屬性 
groupmod –g
新的GID 使用者組帳號名 
groupmod –n
新組名原組名:此命令由於改變使用者組的名稱 

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

    d.
新建使用者: 
命令: useradd [d home] [s shell] [c comment] [m [ktemplate]] 
[
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 -goinstall -G dba oracle  建立Oracle使用者 
    

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

    f.
修改使用者 
命令: usermod
修改已有使用者的資訊 
usermod –l
舊使用者名稱新使用者名稱:修改使用者名稱 
usermod –L
使用者名稱:用於鎖定指定使用者賬號,使其不能登陸系統 
usermod –U
使用者名稱:對鎖定的使用者帳號進行解鎖 
passwd –d
使用者名稱:使帳號無口令,即使用者不需要口令就能登入系統 
例:#usermod -luser2 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服務自動啟動
方法一:(常用\方便
[[email protected] etc]# chkconfig --list|grepvsftpd (
檢視情況
vsftpd         0:off   1:off   2:off   3:off  4:off   5:off   6:off 

[[email protected] 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:
將第n1n2行中所有p1均用p2替代 
:g/p1/s//p2/g:
將檔案中所有p1均用p2替換 

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

h.
其他 
在同一編輯窗開啟第二個檔案,用:sp[filename] 
在多個編輯檔案之間切換,用Ctrl+w