~ 表示用戶主目錄,例如,~/pro 表示用戶主目錄下的 pro 目錄。
> 輸出重定向符,會完全毀掉原來存在的文件,並將輸出結果覆蓋原來的文件內容。
>> 輸出重定向符,把輸出結果加到原有內容的末尾而不是像>那樣覆蓋原有內容。
< 輸入重定向符
| 管道符
大部分的UNIX程序都有兩種輸出,第一種叫做標准輸出(standard output),另一種是標准錯誤輸出(standard error)。標准錯誤輸出是一個叫做stderr的文件句柄,也就是打印錯誤信息的地方,通常是屏幕。
使用>將不會重定向標准錯誤輸出。如果你想重定向標准錯誤輸出的話,在 > 符號前面(或者後面)加一個 & (兩者之間不要加空格);如果你只想重定向標准錯誤輸出而不想重定向標准輸出,在 > 符號前面加一個 2 (shell很專制地把1指定給標准輸出,而把 2 指定給標准錯誤輸出;專業一點的說法是:標准輸出的文件句柄是 1,標准錯誤輸出的文件句柄是 2)。
如果你想要拋棄輸出,使它不出現在屏幕上,解決的方法是把它重定向到一個叫做 /dev/null 的特殊文件中。/dev 目錄是 UNIX 系統用以存放指向終端、磁帶機和其他設備的特殊文件之處,但是 /dev/null 是獨特的,這是一個把你送入的數據全部投入黑洞的地方。舉例來說,下列命令會儲存標准錯誤輸出,但是會遺棄標准輸出:
$ gcc test.c 2> error-msg > /dev/null
許多系統文件後面名裡最後的兩個字母 rc 是資源配置(resource configuration)的意思,而如果最後一個字母是 d 的話,一般情況下是守護程序(daemon)的意思。