文件編碼###
若出現(xiàn)中文錯誤,則在文件頭添加# -*- coding: UTF-8 - *-,文件也必須保存為utf-8編碼
ruby常用命令###
| 參數(shù) | 操作 |
|---|---|
| -c | 只檢查語法不執(zhí)行 |
ruby環(huán)境變量###
| 變量 | 描述 |
|---|---|
| DLN_LIBRARY_PATH | 動態(tài)加載模塊搜索的路徑。 |
| HOME | 當沒有參數(shù)傳遞給 Dir::chdir 時,要移動到的目錄。也用于 File::expand_path 來擴展 "~"。 |
| LOGDIR | 當沒有參數(shù)傳遞給 Dir::chdir 且未設置環(huán)境變量 HOME 時,要移動到的目錄。 |
| PATH | 執(zhí)行子進程的搜索路徑,以及在指定 -S 選項后,Ruby 程序的搜索路徑。每個路徑用冒號分隔(在 DOS 和 Windows 中用分號分隔)。 |
| RUBYLIB | 庫的搜索路徑。每個路徑用冒號分隔(在 DOS 和 Windows 中用分號分隔)。 |
| RUBYLIB_PREFIX | 用于修改 RUBYLIB 搜索路徑,通過使用格式 path1;path2 或 path1path2,把庫的前綴 path1 替換為 path2。 |
| RUBYOPT | 傳給 Ruby 解釋器的命令行選項。在 taint 模式時被忽略(其中,$SAFE 大于 0)。 |
| RUBYPATH | 指定 -S 選項后,Ruby 程序的搜索路徑。優(yōu)先級高于 PATH。在 taint 模式時被忽略(其中,$SAFE 大于 0)。 |
| RUBYSHELL | 指定執(zhí)行命令時所使用的 shell。如果未設置該環(huán)境變量,則使用 SHELL 或 COMSPEC |
ruby中的空白###
a + b會被解釋為a+b ,是一個變量
a +b會被解釋為a(+b),是一個方法調用
ruby的行尾###
在行尾遇到+、-或/時表示該行語句未完,延續(xù)到下一行
ruby標識符###
大小寫敏感
ruby中的Here document###
"Here Document" 是指建立多行字符串。在 << 之后,您可以指定一個字符串或標識符來終止字符串,且當前行之后直到終止符為止的所有行是字符串的值。
如果終止符用引號括起,引號的類型決定了面向行的字符串類型。請注意<< 和終止符之間必須沒有空格。
下面是不同的實例:
#!/usr/bin/ruby -w
# -*- coding : utf-8 -*-
print <<EOF
這是第一種方式創(chuàng)建here document 。
多行字符串。
EOF
print <<"EOF"; # 與上面相同
這是第二種方式創(chuàng)建here document 。
多行字符串。
EOF
print <<`EOC` # 執(zhí)行命令
echo hi there
echo lo there
EOC
print <<"foo", <<"bar" # 您可以把它們進行堆疊
I said foo.
foo
I said bar.
bar
上面語句執(zhí)行后的結果如下
This is the first way of creating her document ie.
multiple line string.
This is the second way of creating her document ie.
multiple line string.
hi there
lo there
I said foo.
I said bar.
ruby的BEGIN與END###
BEGIN {}中的代碼會在所有代碼執(zhí)行之前執(zhí)行,END{}中的代碼會在所有代碼執(zhí)行完之后執(zhí)行。
ruby中的注釋###
單行注釋以#開始
多行注釋以=begin開始,=end結束