rubyのパスが異なる環境でも動作するように、下記のように記述しました。
#! /bin/sh exec ruby -S -x "$0" "$@" #! ruby
「起動されたshは2行目のexecでRubyに飛び、Rubyは3行目までを読み飛ばす」
と解説がありましたが、
スッキリと理解できません。
$0 - 実行しているシェルスクリプトのパス
$@ - シェルスクリプトに渡されたすべての引数
『Rubyは3行目までを読み飛ばす』と、なぜrubyのパスに
関係せず4行目以降のスクリプト実行できるのでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/04 06:36