2013-07-13 147 views
-1

我學習bash的環境,無法理解我所得到的運行此命令時:wc命令結束後會做什麼?

wc filename.txt & 

則返回一個包含1數字整數和另一個整數數組,他們都沒有任何其他的結果,我可以得到一致來自wc命令(-l,-m,-w,-c)。 除了第二個整數比例如字節數大得多。所以我非常想知道。 我瀏覽論壇並發現了有關Unix/Linux環境中&符號的多種用法的一些解釋,但沒有任何我可以涉及的東西。 我不需要它,但我不會將這個謎團沖走,我想了解! 謝謝

+2

它在後臺啓動進程,立即將控制權返回給腳本。新進程的PID存儲在'$!'中。 –

+0

你能展示更多的上下文嗎?是什麼讓你覺得它「返回一個數組」? – aschepler

回答

7

我想像你看到的整數與此類似:

[1] 1830 

&在後臺啓動一個命令,殼打印的作業號(1)和進程ID(1830)。在長時間運行的作業上,您可以使用這兩個數字來控制其執行。有關更多詳細信息,請參閱bash手冊頁的JOB CONTROL部分。

+0

謝謝。現在,這是清楚的,實際上是有用的。 @aschepler,你會在Kevin的回答中找到關於輸出格式化的正確猜測。更確切地說,因爲它出現了:[3] 3230 –

+0

@BarbWire,你應該標記這個答案是正確的。 http://stackoverflow.com/help/someone-answers –

1

在WC命令結尾處的&符號告訴shell在後臺開始執行命令,併爲進一步的命令行命令做好準備。