2009-05-19 141 views
1

特別是最後兩個分別用' - '和'+', 這對地球意味着什麼?這些輸出是什麼意思?

[1] Done     php start.php bots/admin32.bot.php 

[2] Done     php start.php bots/admin36.bot.php 

[3] Done     php start.php bots/admin10.bot.php 

[4] Done     php start.php bots/admin11.bot.php 

[5] Done     php start.php bots/admin13.bot.php 

[6] Done     php start.php bots/admin3.bot.php 

[7]- Done     php start.php bots/admin4.bot.php 

[8]+ Done     php start.php bots/admin7.bot.php 

[[email protected] robot]# 
+0

你能解釋你想要做什麼嗎? – 2009-05-19 20:43:52

+0

只是一個簡單的實驗:睡眠1s&睡眠1s&睡眠1s&,然後等待,然後按回車 – 2009-05-19 21:17:21

回答

1

我覺得你的命令包含字符&,這是造成命令在後臺運行。當命令結束時,它打印這個輸出。

例子:

$ echo 1 & 
[1] 16021 
$ 
[1]+ Done     echo 1 

爲了防止這種情況發生,引用&字符。這也可能是你的情況URL的一部分,所以你可以使用:

$ wget "http://www.example.com/index.php?a=1&b=2" 

至於+-的跡象,它們分別表示當前和以前的工作。有關更多信息,請參閱job control in bash上的此頁面。

8

Bash Reference Manual

作業號n可以被稱爲「%n」。符號'%%'和'%+'指的是shell當前作業的概念,這是最後一個作業在前臺或後臺開始時停止的作業。一個'%'(沒有附帶的工作規範)也指當前的工作。以前的工作可以使用'%-'來引用。如果只有一項工作,則可以使用'%+'和'%-'來指代那項工作。在與作業有關的輸出中(例如作業命令的輸出),當前作業始終標記爲'+',而上一個作業爲'-'。

在bash的輸出啓動和停止作業時,

[n]+狀態

手段 「的工作%n(又名工作%+)現在是狀態」。