2010-02-22 12 views
3

在csh中,一行處的開始的處的和號是什麼?它似乎被忽略(沒有錯誤信息),但爲什麼?&符號在csh中的一行的開始處

+0

顯示該行的完整示例。 – ghostdog74 2010-02-23 00:13:05

+0

&echo'hi there' – JoelFan 2010-02-23 05:33:28

+0

我們正在嘗試填寫此問題的詳細信息:http://stackoverflow.com/questions/2308874/explain-the-deviousness-of-the-perl-preamble – cjm 2010-02-24 00:11:28

回答

0

我找不到任何關於它的csh文檔。但是,我知道在make它抑制命令的任何輸出(但仍然運行它)。也許就是這樣。

+0

在哪個版本'make'確實'&'壓制命令的輸出?我知道'@'停止'make'迴應命令;我知道' - '要停止'關注'非零退出狀態。 – 2010-02-23 16:39:39

4

找到東西有趣:

分號(;)字符的單個 命令行上分離 連續指令。例如,

% <command1> ; <command2> 

執行<命令1>,和當它完成,<命令2>被執行。

與符號字符(&)類似於 到分號(;),但不等待 爲<命令1>以完成。

也許它把它當作一個空的命令來對待?

+1

在Bourne shell中,如果使用分號啓動命令行,則會出現語法錯誤;同上。但是,如果csh將其視爲在後臺運行的空命令,至少它是有意義的(某種)。 (csh允許「'; echo abc'」和「'echo abc'」,在每種情況下回顯'abc' - 與空命令假設一致。 – 2010-02-22 23:46:06

1

最好的回答方式就是例子。JoelFAn的 以思想ahaed:

例1個

用戶$日期;睡5s;日期

星期四04月05日10時46分45秒IST 2012

星期四04月05日10時46分50秒IST 2012

實施例2

用戶$日期&睡眠5s &日期

[1] 18371

[2] 18372

星期四04月05日10時47分09秒IST 2012

星期四04月05日10時47分09秒IST 2012

[1] - 完成日期

EXAMPLE3

用戶$ BG

[2]睡眠5S &

的例子是自解釋的。

謝謝

+0

+1 for IST ....;) – JoelFan 2012-04-05 11:33:43