rake 속기
레 퍼 런 스 튜 토리 얼
hello rake
#rakefile.rb
task :default => [:hello]
task :hello do
puts 'hello rake'
end
#$ rake
#$ rake hello
#$ rake rakefile.rb
namespace
task :default => "morning:turn_of_alarm"
namespace :morning do
task :turn_of_alarm do
puts 'ding...'
end
end
#$rake moring:turn_of_alarm
task description
desc "description of task "
task :hello do
end
#$ rake -T
#=>
# rake hello # description of task
redefined task
task :default => 'morning:turn_of_alarm'
namespace :morning do
desc "turn of alarm"
task :turn_of_alarm do
puts 'hello'
end
end
namespace :morning do
task :turn_of_alarm do
puts 'world'
end
end
#$ rake
#=>
# hello
# world
invoking other task
task :default => 'task:world'
namespace :task do
desc "hello world"
task :hello do
puts 'hello'
end
end
namespace :task do
task :world do
puts '...'
Rake::Task['task:hello'].invoke
puts 'world'
end
end
#Rake::Task['task:hello'].invoke(args.args_name)
task dependencies
task :default => 'task:world'
namespace :task do
task :hello do
puts 'hello'
end
end
namespace :task do
task :world => :hello do
puts 'world'
end
end
task arguments
task :say, [:name,:gender] do |t, args|
args.with_defaults(:name=>'john',:gender=>'boy')
puts "hello #{args.name} #{args.gender}"
end
#rake say[Lucy,girl]
multitask
Declare a task that performs its prerequisites in parallel. Multitasks does not guarantee that its prerequisites will execute in any given order (which is obvious when you think about it)
multitask :deploy => [:deploy_gem, :deploy_rdoc]
mkdir task
directory "tmp/abc"
#rake tmp/abc
#mkdir -p tmp/abc
# tmp/abc
task :task_a => "tmp/abc" do
end
rule task
rule '.o' => ['.c'] do |t|
sh "cp #{t.source} #{t.name}"
end
#touch a.c
#rake a.o
#cp a.c a.o
#t.source a.c, t.name a.o
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Ruby의 단일 메소드 및 단일 클래스 상세 정보단일 방법 Ruby는 단일 객체에만 적용되는 단일 객체 추가 방법을 단일 방법이라고 합니다. 또한 위에서 사용한 정의 방법 외에 Object#define_를 통해singleton_method 방법으로 단일 방법 정의...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.