summaryrefslogtreecommitdiff
path: root/ruby.1
diff options
context:
space:
mode:
Diffstat (limited to 'ruby.1')
-rw-r--r--ruby.124
1 files changed, 23 insertions, 1 deletions
diff --git a/ruby.1 b/ruby.1
index 5c3df055f0..f3bb919183 100644
--- a/ruby.1
+++ b/ruby.1
@@ -164,7 +164,29 @@ ruby \- オブジェクト指向スクリプト言語
.TP 5
.B \-S
スクリプト名が`/'で始まっていない場合, 環境変数`PATH'の値を
-使ってスクリプトを探す.
+使ってスクリプトを探す. これは、#! をサポートしていないマシ
+ンで、#! による実行をエミュレートするために、以下のようにし
+て使うことができる:
+
+ #! /usr/local/bin/ruby
+ # This line makes the next one a comment in ruby \
+ eval "exec /usr/local/bin/ruby -S $0 $*"
+
+システムは最初の行を無視し,スクリプトを`/bin/sh'に渡す.
+`/bin/sh'はrubyスクリプトをシェルスクリプトとして実行しよう
+とする.シェルは2行目だけをコメントであると解釈し,3行目を通
+常のシェルコマンドとして実行し,rubyインタプリタを起動する.
+
+システムによっては`$0'は必ずしもフルパスを含まないので,`-S'
+を用いてrubyに必要に応じてスクリプトを探すように指示する.
+rubyがスクリプトを見つけると、これらの行の解析を始めるが,
+rubyは2行目の行末にあるバックスラッシュにより,2行目のコメン
+トが3行目まで継続するとみなして,3行目を無視する.
+
+ファイル名に含まれるスペースなどを正しく扱うには,`$*'よりも
+`${1+"$@"}'のほうがよいだろうが,cshが解釈する場合には動作し
+ない.
+
.TP 5
.B \-v, \-\-verbose
冗長モード. 起動時にバージョン番号の表示を行い, システム変数