1¡¢Ç°ºǫ́×÷ÒµµÄ¶¨Òå
ǰºǫ́×÷ҵʵ¼ÊÉ϶ÔÓ¦µÄÒ²¾ÍÊÇǰºǫ́½ø³Ì£¬Òò´ËÒ²¾ÍÓжÔÓ¦µÄpid¡£ÔÚÕâÀïÎÒÃÇͳ³ÆÎª×÷Òµ¡£
ÎÞÂÛÊÇǰ̨×÷Òµ»¹ÊǺǫ́×÷Òµ£¬Á½Õß¶¼À´×Ôµ±Ç°µÄshell£¬Êǵ±Ç°shellµÄ×Ó³ÌÐò¡£
ÏÂÃæÊÇÁ½Õߵ͍Òå¡£
ǰ̨×÷Òµ£º¿ÉÒÔÓÉÓû§²ÎÓë½»»¥¼°¿ØÖƵÄ×÷ÒµÎÒÃdzÆÖ®ÎªÇ°Ì¨×÷Òµ¡£
ºǫ́×÷Òµ£ºÔÚÄÚ´æ¿ÉÒÔ×ÔÔËÐеÄ×÷Òµ£¬Óû§ÎÞ·¨²ÎÓë½»»¥ÒÔ¼°Ê¹ÓÃ[ctrl]+cÀ´ÖÕÖ¹£¬Ö»ÄÜͨ¹ýbg»òfgÀ´µ÷ÓøÃ×÷Òµ¡£
2¡¢¼¸¸ö³£ÓõÄ×÷ÒµÃüÁî
a¡¢command & Ö±½ÓÈÃ×÷Òµ½øÈëºǫ́ÔËÐÐ
b¡¢[ctrl]+z ½«µ±Ç°×÷ÒµÇл»µ½ºǫ́
c¡¢jobs ²é¿´ºǫ́×÷ҵ״̬
d¡¢fg %n Èúǫ́ÔËÐеÄ×÷ÒµnÇл»µ½Ç°Ì¨À´
d¡¢bg %n ÈÃÖ¸¶¨µÄ×÷ÒµnÔÚºǫ́ÔËÐÐ
e¡¢kill %n ÒÆ³ýÖ¸¶¨µÄ×÷Òµn
"n" ΪjobsÃüÁî²é¿´µ½µÄjob±àºÅ£¬²»Êǽø³Ìid¡£
ÿһ¸öjob»áÓÐÒ»¸ö¶ÔÓ¦µÄjob±àºÅ£¬±àºÅÔÚµ±Ç°µÄÖÕ¶Ë´Ó1¿ªÊ¼·ÖÅä¡£
job ±àºÅµÄʹÓÃÑùʽΪ[n]£¬ºóÃæ¿ÉÄÜ»á¸úÓÐ "+" ºÅ»òÕß "-" ºÅ£¬»òÕßʲôҲ²»¸ú¡£
"+" ºÅ±íʾ×î½üµÄÒ»¸öjob£¬"-" ºÅ±íʾµ¹ÊýµÚ¶þ¸ö±»Ö´ÐеÄJob¡£×¢£¬"+" ºÅÓë "-" ºÅ»áËæ×Å×÷ÒµµÄÍê³É»òÌí¼Ó¶ø¶¯Ì¬·¢Éú±ä»¯¡£
ͨ¹ýjobs·½Ê½À´¹ÜÀí×÷Òµ£¬µ±Ç°Öն˵Ä×÷ÒµÔÚÆäËûÖն˲»¿É¼û¡£
3¡¢ÑÝʾºǫ́×÷ÒµÃüÁî
a¡¢Ö±½Ó½«×÷Òµ·ÅÈëµ½ºǫ́(¸½¼Ó & ·ûºÅ)
robin@SZDB:/tmp> tar -czvf temp.tar.gz tempSYBO2SZ.dbf &
[1] 12500
robin@SZDB:/tmp> tempSYBO2SZ.dbf
robin@SZDB:/tmp> #´Ëʱ¿É½øÐÐÆäËü²Ù×÷£¬×÷ÒµÒ»µ©Íê³É£¬»áµ¯³öÈçϵÄÌáʾ
[1]+ Done tar -czvf temp.tar.gz tempSYBO2SZ.dbf
robin@SZDB:/tmp> ls -hltr temp*
-rwxr-xr-x 1 robin oinstall 490M 2013-05-02 17:48 tempSYBO2SZ.dbf
-rw-r--r-- 1 robin oinstall 174M 2013-05-02 17:50 temp.tar.gz
b¡¢ÒѾ¿ªÊ¼Ö´ÐУ¬µ«ÐèÒª·ÅÈëºǫ́(ʹÓÃ[ctrl]+z)
robin@SZDB:/tmp> tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
tempSYBO2SZ.dbf
[1]+ Stopped tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
robin@SZDB:/tmp> jobs
[1]+ Stopped tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
#ÏÂÃæÍ¬Ê±·¢²¼Á½¸ö×÷Òµ£¬²¢ÇÒÔÚÖÐ;°´ÏÂ[ctrl]+zÒԱ㽫µ±Ç°×÷ÒµÌá½»µ½ºǫ́
robin@SZDB:/tmp> find /u02 -type f -size +100000k
robin@SZDB:/tmp> find / -type f -size +100000k
#Ôٴβ鿴µ±Ç°µÄjobsʱ£¬jobs¹ÜÀíÆ÷Àï³öÏÖÁË3¸ö´¦ÓÚstopp״̬µÄjob
robin@SZDB:/tmp> jobs
[1] Stopped tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
[2]- Stopped find / -type f -size +100000k
[3]+ Stopped find /u02 -type f -size +100000k
robin@SZDB:/tmp> jobs -l #ʹÓÃ-l²ÎÊý²é¿´µ±Ç°shellÏÂËùÓеÄ×÷ÒµÒÔ¼°¶ÔÓ¦µÄjob number£¬½ø³Ìpid
[1] 32682 Stopped tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
[2]- 32687 Stopped find /u02 -type f -size +100000k
[3]+ 32707 Stopped find / -type f -size +100000k
#ÏÂÃæÍ¨¹ýpid¿ÉÒԲ鿴µ½¶ÔÓ¦µÄ½ø³ÌÐÅÏ¢
robin@SZDB:/tmp> ps -ef | grep 32707 | grep -v grep
robin 32707 32095 0 09:48 pts/1 00:00:00 find / -type f -size +100000
robin@SZDB:/tmp> tty #µ±Ç°Öն˵ÄÐÅϢΪpts/1
/dev/pts/1
#´ò¿ªÁíÍâÒ»¸öÖÕ¶Ë
robin@SZDB:~> tty
/dev/pts/3
robin@SZDB:~> jobs #´Ëʱ¿ÉÒÔ¿´µ½jobsÃüÁîÎÞÈκηµ»Ø
robin@SZDB:~> ps -ef | grep 32707 | grep -v grep #½ö½ö¸ù¾Ý½ø³Ìid¿ÉÒÔÕÒµ½¶ÔÓ¦µÄ×÷Òµ
robin 32707 32095 0 09:48 pts/1 00:00:00 find / -type f -size +100000
#ÓÉÉÏ¿ÉÖª£¬¶ÔÓÚµ±Ç°shellϵÄjobs£¬½öµ±Ç°shell(ÖÕ¶Ë)¿É¼û
c¡¢½«ºǫ́×÷ÒµÇл»µ½Ç°Ì¨(fgÃüÁî)
robin@SZDB:/tmp> fg #Ê¡ÂÔJob numberµÄÇéÐΣ¬Ôò½«È±Ê¡µÄjobÇл»µ½Ç°Ì¨
find / -type f -size +100000k
/u02/database/old/CNMMBOBK/undo/undotbsCNMMBOBK.dbf
......
[ctrl]+z
robin@SZDB:/tmp> fg %1
tar -czvf temp2.tar.gz tempSYBO2SZ.dbf
robin@SZDB:/tmp> jobs
[2]- Stopped find /u02 -type f -size +100000k
[3]+ Stopped find / -type f -size +100000k
d¡¢ÔËÐкǫ́ÖÐÔÝÍ£µÄ×÷Òµ(bgÃüÁî)
#Ç°ÃæÓÐ2¸öjob´¦ÓÚstopped״̬£¬ÏÖÔÚÎÒÃÇÈÃÆäÔÚºǫ́ÔËÐÐ,Ö±½ÓÊäÈëbgÃüÁîÔòȱʡµÄjob¼ÌÐøÔËÐУ¬·ñÔòÊäÈëjob±àºÅ£¬ÔËÐÐÖ¸¶¨µÄjob
robin@SZDB:/tmp> bg 2 #ÊäÈëbg 2Ö®ºó£¬¿ÉÒÔ¿´µ½ÔÀ´µÄÃüÁîºó±»×·¼ÓÁË&
[2]- find /u02 -type f -size +100000k &
robin@SZDB:/tmp> jobs
[2]- Running find /u02 -type f -size +100000k &
[3]+ Stopped find / -type f -size +100000k
e¡¢ÒƳýÖ¸¶¨µÄ×÷Òµn(kill)
robin@SZDB:/tmp> jobs
[3]+ Stopped find / -type f -size +100000k
robin@SZDB:/tmp> kill -9 %3 #Ç¿ÖÆÖÕÖ¹job 3£¬×¢Ò⣬´Ë´¦µÄ%²»¿ÉÊ¡ÂÔ
robin@SZDB:/tmp> jobs
[3]+ Killed find / -type f -size +100000k
robin@SZDB:/tmp> jobs
#kill -9 ±íÃ÷Ç¿ÖÆÖÕÖ¹Ö¸¶¨µÄJob£¬-15Ôò±íÃ÷ÊÇÕý³£ÖÕÖ¹Ö¸¶¨µÄjob¡£ kill -l ÔòÁгökillÄܹ»Ê¹ÓõÄËùÓÐÐźÅ
#¶ÔÓÚÉÏÊöÃüÁîµÄÏêϸ°ïÖú,ʹÓà man commandÀ´»ñÈ¡°ïÖúÐÅÏ¢
f¡¢´ø²Îshell½Å±¾µÄºǫ́´¦Àí
#ÏÂÃæÊÇÒ»¸ö²âÊÔÓõÄshell½Å±¾
robin@SZDB:~/dba_scripts/custom/bin> more echo_time.sh
#!/bin/bash
SID=$1
sqlplus -S scott/tiger@$1 <
begin
dbms_lock.sleep(300);
end;
/
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') today from dual;
exit;
EOF
exit
#Ö±½ÓÖ´Ðдø²ÎµÄshell½Å±¾
# Author : Robinson
# Blog : http://blog.csdn.net/robinson_0612
robin@SZDB:~/dba_scripts/custom/bin> ./echo_time.sh CNMMBO
TODAY
-------------------
2013-05-03 11:07:48
[1]+ Stopped ./echo_time.sh CNMMBO #°´ÏÂ[ctrl]+z½«ÆäÇл»µ½ºǫ́
robin@SZDB:~/dba_scripts/custom/bin> jobs
[1]+ Stopped ./echo_time.sh CNMMBO
robin@SZDB:~/dba_scripts/custom/bin> kill -9 %1 #Ç¿ÖÆÖÕÖ¹¸Ãjob
[1]+ Stopped ./echo_time.sh CNMMBO
robin@SZDB:~/dba_scripts/custom/bin> jobs #´Ëʱ¸ÃjobÒѾ±»±ê¼ÇΪkilled
[1]+ Killed ./echo_time.sh CNMMBO
robin@SZDB:~/dba_scripts/custom/bin> ./echo_time.sh CNMMBO & #½«shell½Å±¾²ÎÊýÖ®ºó¸ú &·ûºÅ¼´½«job·ÅÈëµ½ºǫ́
[1] 2233
robin@SZDB:~/dba_scripts/custom/bin> #´ËʱÒÀ¾É¿ÉÒÔ¿´µ½ÓÐÊä³ö£¬µ«¿ÉÒÔ¼ÌÐøºóÐø²Ù×÷
TODAY
-------------------
2013-05-03 11:08:25
robin@SZDB:~/dba_scripts/custom/bin> jobs
[1]+ Running ./echo_time.sh CNMMBO &
robin@SZDB:~/dba_scripts/custom/bin> ./echo_time.sh CNMMBO >temp.log 2>&1 & #×î¼ÑµÄ°ì·¨ÊÇÖ±½Ó½«ÆäÊä³öµ½ÈÕÖ¾Îļþ
[2] 2256
robin@SZDB:~/dba_scripts/custom/bin> jobs
[1]- Running ./echo_time.sh CNMMBO &
[2]+ Running ./echo_time.sh CNMMBO >temp.log 2>&1 &
#ÏÂÃæÀ´²é¿´ÈÕÖ¾£¬ÈÕÖ¾ÖеÄÁ½´Î²éѯÕýºÃÏà²î5·ÖÖÓ
robin@SZDB:~/dba_scripts/custom/bin> more temp.log
TODAY
-------------------
2013-05-03 11:09:24
PL/SQL procedure successfully completed.
TODAY
-------------------
2013-05-03 11:14:24
4¡¢×÷ÒµÍÑ»ú¹ÜÀí
½«×÷Òµ(½ø³Ì)Çл»µ½ºǫ́¿ÉÒÔ±ÜÃâÓÉÓÚÎó²Ù×÷Èç[ctrl]+cµÈµ¼ÖµÄjob±»Òì³£ÖжϵÄÇéÐΣ¬¶øÍÑ»ú¹ÜÀíÖ÷ÒªÊÇÕë¶ÔÖÕ¶ËÒì³£¶Ï¿ªµÄÇéÐΡ£
ͨ³£Ê¹ÓÃnohupÃüÁîÀ´Ê¹µÃÍÑ»ú»ò×¢ÏúÖ®ºó£¬JobÒÀ¾É¿ÉÒÔ¼ÌÐøÔËÐС£Ò²¾ÍÊÇ˵nohupºöÂÔËùÓйҶÏ(SIGHUP)Ðźš£
Èç¹û¸Ã·½Ê½ÃüÁîÖ®ºóδָ¶¨&·ûºÅ£¬ÔòjobλÓÚǰ̨£¬Ö¸¶¨&·ûºÅ£¬ÔòjobλÓÚºǫ́¡£
#ÏÂÃæÊÇʹÓÃnohupµÄʾÀý£¬¿ÉÒÔÊ¡ÂÔÈÕÖ¾µÄÊä³ö£¬ÒòΪÔjobµÄÊä³ö»á×Ô¶¯±»nohupÖØ¶¨Ïòµ½È±Ê¡µÄnohup.outÈÕÖ¾Îļþ
robin@SZDB:~/dba_scripts/custom/bin> nohup ./echo_time.sh CNMMBO
nohup: appending output to `nohup.out'
#Ö±½Ó¶Ï¿ªÖÕ¶Ë£¬²¢ÖØÐÂÁ¬½ÓÒ»¸öеÄÖÕ¶Ë´°¿Ú
robin@SZDB:~/dba_scripts/custom/bin> jobs #ÓÉÓÚÊÇÒ»¸öеÄÖÕ¶Ë£¬ËùÒÔjobsÎÞ·¨¿´µ½ÈκÎ×÷Òµ
robin@SZDB:~/dba_scripts/custom/bin> ps -ef | grep echo_time.sh
robin 2623 1 0 11:26 ? 00:00:00 /bin/bash ./echo_time.sh CNMMBO
robin@SZDB:~/dba_scripts/custom/bin> more nohup.out #ÆäÊä³öµÄÈÕÖ¾¿ÉÒÔ¿´µ½job±»³É¹¦Íê³É
TODAY
-------------------
2013-05-03 11:26:32
PL/SQL procedure successfully completed.
TODAY
-------------------
2013-05-03 11:31:32
#ÏÂÃæÊ¹ÓÃnohup·½Ê½ÇÒ½«Job·ÅÈëºǫ́´¦Àí£¬Í¬Ê±Ö¸¶¨ÁËÈÕÖ¾Îļþ£¬ÔònohupʹÓÃÖ¸¶¨µÄÈÕÖ¾Îļþ£¬¶ø²»»áÊä³öµ½È±Ê¡µÄnohup.out
robin@SZDB:~/dba_scripts/custom/bin> nohup ./echo_time.sh CNMMBO >temp2.log 2>&1 &
[1] 3019
robin@SZDB:~/dba_scripts/custom/bin> jobs
[1]+ Running nohup ./echo_time.sh CNMMBO >temp2.log 2>&1 &
×÷Õߣºrobinson