Ruby 命令列選項
Ruby 一般是從命令列運行,方式如下:
$ ruby [ options ] [.] [ programfile ] [ arguments ... ]
解釋器可以透過下列選項被調用,來控制解釋器的環境和行為。
選項 | 描述 |
---|---|
#-a | 與-n 或- p 一起使用時,可開啟自動分割模式(auto split mode)。請查看 -n 和 -p 選項。 |
-c | 只檢查語法,不執行程式。 |
-C dir | 在執行前改變目錄(等價於 -X)。 |
-d | 啟用偵錯模式(等價於 -debug)。 |
-F pat | 指定 pat 為預設的分離模式($;)。 |
-e prog | 指定 prog 作為程式在命令列中執行。可以指定多個 -e 選項,用來執行多個程式。 |
-h | 顯示命令列選項的概覽。 |
-i [ ext] | 將檔案內容重寫為程式輸出。原始檔案會被加上副檔名 ext 儲存下來。如果未指定 ext,原始檔案會被刪除。 |
-I dir | 新增 dir 作為載入庫的目錄。 |
-K [ kcode] | 指定多位元組字元集編碼。 e 或 E 對應 EUC(extended Unix code),s 或 S 對應 SJIS(Shift-JIS),u 或 U 對應 UTF-8,a、A、n 或 N 對應 ASCII。 |
-l | 啟用自動行尾處理。從輸入行取消一個換行符,並在輸出行追加一個換行符。 |
-n | 將程式碼放在一個輸入迴圈中(就像在 while gets; ... end 中一樣)。 |
-0[ octal] | 設定預設的記錄分隔符號($/)為八進位。如果未指定 octal 則預設為 \0。 |
-p | 把程式碼放在一個輸入循環中。在每次迭代後輸出變數 $_ 的值。 |
-r lib | 使用 require 來載入 lib 作為執行前的函式庫。 |
-s | 解讀程式名稱和檔案名稱參數之間的匹配模式-xxx 的任何參數作為開關,並定義對應的變數。 |
-T [level] | 設定安全級別,執行不純度測試(如果未指定 level,則預設值為 1)。 |
-v | 顯示版本,並啟用冗餘模式。 |
-w | 啟用冗餘模式。如果未指定程式文件,則從 STDIN 讀取。 |
-x [dir] | 刪除 #!ruby 行之前的文字。如果指定了 dir,則把目錄改為 dir。 |
-X dir | 在執行前改變目錄(等價於 -C)。 |
-y | 啟用解析器偵錯模式。 |
--copyright | 顯示版權宣告。 |
--debug | 啟用偵錯模式(等價於 -d)。 |
--help | 顯示命令列選項的一個概覽(等價於 -h)。 |
--version | 顯示版本。 |
--verbose | 啟用冗餘模式(等價於 -v)。設定 $VERBOSE 為 true。 |
--yydebug | 啟用解析器偵錯模式(等價於 -y)。 |
單字元的命令列選項可以組合使用。下面兩行表達了同樣的意思:
$ ruby -ne 'print if /Ruby/' /usr/share/bin $ ruby -n -e 'print if /Ruby/' /usr/share/bin