複製鏈接
請複製以下鏈接發送給好友

fg

(LINUX命令之一)

鎖定
fg指令是Linux下常用的指令之一。fg指令用於將後台運行的或掛起的任務(或作業)切換到前台運行。
外文名
foreground
簡    稱
fg
用    途
在前台運行作業
類    型
LINUX命令之一
語    法
fg [JobID]

目錄

fg簡介

'FG'解釋:foreground
描述:如果作業控制啓用了(請參閲《AIX 5L V5.2 系統用户指南:操作系統設備》中的『Korn Shell 中的作業控制』),fg 命令移動當前環境中的後台作業到前台來。使用 JobID 參數來指明在前台下要運行的特定作業。如果此參數沒有提供,fg 命令使用最近在後台被暫掛的作業,或者作為後台作業運行。
用途:fg指令用於將後台運行的或掛起的任務(或作業)切換到前台運行。如果後台有多個命令執行時,可以用fg+後台的作業弓指令調至前台繼續運行。 [1] 
語法:fg [JobID]
JobID 參數可以是進程的標識號,或者您可以使用如下的符號組合:
%Number 通過作業編號引用作業。
%String 引用名稱以特定字符串開頭的作業。
%?String 引用名稱中包含特定字符串的作業。
%+ OR %% 引用當前作業。
%- 引用前一個作業。
使用 fg 命令把作業放到前台將導致從列表中除去作業進程的標識符,此列表是那些當前外殼環境所知道的。 [2] 
/usr/bin/fg 命令在它自己的命令執行環境下操作時不工作,因為此環境沒有可使用的合適的作業。因為這個原因, fg 命令作為 Korn 或者 POSIX 外殼常規內置命令被執行。
退出狀態
下列出口值被返回:
0 成功結束。
>0 發生錯誤。
如果禁用作業控制, fg 命令將出錯退出,前台不放任何作業。
示例
如果 job -l 命令的輸出 顯示了後台運行的如下作業:
[1] + 16477RunningSleep 100 &
可以在前台使用進程標識符來運行 sleep 100 & 命令,只需輸入:
fg 16477
屏幕將顯示:
sleep
文件
/usr/bin/ksh 包含 Korn 外殼 fg 內置命令。
/usr/bin/fg 包含 fg 命令。
適用範圍:Red Hat、RHEL、 Ubuntu、CentOS、SUSE、openSUSE、Fedora
相關指令:
bg:將作業(或任務)放到後台運行。
jobs:顯示shell的作業信息。 [3] 

fg舉例

題目:將後台作業切換到前台運行。
(1)使用jobs顯示後台作業。在命令行中輸入的命令示例如下:
[root@proxyl root]#jobs       #顯示當前的作業列表
輸出信息如下:
  [1]   Stopped    wc   
  [2]-  Stopped    wc
  [3]+  Stopped    wc
(2)將作業號為2的作業切換到前台運行。在命令行中輸入的命令示例如下:
 [root@proxyl root]#fg2    #將2號作業切換到前台運行

輸出信息如下:
  wc                     #wc命令已經轉到前台運行
上例中如果想把剛剛放到後台的作業(本例中是3號作業)切換到前台,可以直接輸入fg指令並按Enter鍵即可。 [1] 
注意:有些指令(如需要和用户交互的指令等)是無法在後台運行的,這些指令在後台會被掛起,可以使用fg指令將其切換到前台運行。
參考資料
  • 1.    吳永佩.Linux指令範例速查辭典:中國鐵道出版社,2014.03:606-607
  • 2.    王小鴿.微機上的UNIX操作系統Linux使用指南:清華大學出版社,1997.08:82
  • 3.    施威銘研究室.Linux指令參考手冊:中國青年出版社,2000.05:214