0

私は Michael Hartl の Ruby On Rails Tutorial を読んでいます。多くのプログラミング チュートリアルで慣習として、彼は次のようなコマンド ライン コマンドを使用させています。

bundle install
rake db:migrate

私は、これらがどのタイプのコマンドなのか疑問に思っています。私はバッチファイルについて少し読んだことがありますが、読んだことから、これらは私が読んだバッチファイルのようです。

4

2 に答える 2

2

db:migrateレーキタスクです。

bundle installコマンドライン引数を取る Ruby プログラムの Rake と同じです。

ブートストラップの SASS バージョンについてはわかりませんが、最終的に単なるバッチ ファイルになる可能性は低いです。

それらを見れば、それらが何であるかを知ることができます (まあ、db:migrate はタスクなので、実装にたどり着くにはもう少し足を運ぶ必要があります。実際に実行 rakeしているのは、Unix では shebanged Ruby です) 。スクリプト; 追加. Windows の下でそれらが何であるかはわかりません.)


Rake は Ruby プログラムであり、shebang() の後のプログラム"#!"、つまり Ruby インタープリターによって実行されます。

#!/Users/dave/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
require 'rubygems'

version = ">= 0"

if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
  version = $1
  ARGV.shift
end

gem 'rake', version
load Gem.bin_path('rake', 'rake', version)
于 2012-07-29T22:22:15.010 に答える
1

Windows では、Windows にはシバン サポートがないため、実際にはバッチ ファイルを実行しています。たとえば、バンドルのバッチ ファイルは次のとおりです。

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"ruby.exe" "C:/Ruby193/bin/bundle" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"ruby.exe" "%~dpn0" %*

Ruby がインストールされている場所にチェックインして bin ディレクトリに移動すると、Ruby を手動で呼び出さなくても実行できるように、すべての Ruby コマンドと対応するバッチ ファイルが表示されます。

于 2012-07-29T22:43:06.053 に答える