Linux Shell下后台运行及其前台的转换
时间:2009-05-08 来源:yangguosdxl
当用bash启动一个程序,你可以用在程序后加&,实现程序在后台运行; ' V# F, C, Y+ s% `5 v. U/ Y/ d" p 4 Q( ? g' _$ w( K 例如: emacs & |7 L5 a: e- Q& a 7 I7 f! z+ {/ q- z% g$ P( X 但如果你忘了输入&;但你又不想把程序停止后重新启动;, E1 I7 }) {' m5 S1 C& @: ~# g 4 Z- L( x5 w" G$ q# k 你可以这么做:# x/ O5 O* ^- `/ N # i/ Y3 _9 I9 B: I4 g 按Ctrl + Z暂停前台工作,比如前面提到的Emacs; & [+ m9 O) \6 V J7 |' Z+ \ ( P8 P5 `$ h: A5 G* Y 然后用jobs命令查看当前bash一共启动了多少程序,你可以看到你的emacs在其中,它的状态是Stoped的; 并且它的jobID也可以看,比如是2 ( d$ L5 }. e; l1 S+ r9 v$ d& l `' d) [+ z" A& H; W+ L' @ 然后用命令bg 27 L# r h: [" M0 v; A# _ , D) h. f2 H: O' T- Q1 G4 I 这样你就可以达到和emacs &一样的效果了。. D- t0 q+ \, Z W $ d' X+ A5 E3 S. ^2 c: O 当你有些工作比如updatedb, find等需要一定时间,这些工作可以考虑让它在后台运行,而你可以用bash做其它工作。6 m" N; N1 Z; U 5 A* ]. Z3 @; L7 c1 @ 如果需要把任务回到前台,只需要fg 2. |
相关阅读 更多 +