gpt4 book ai didi

ruby - 如何在常规任务中构建文件和目录 Rake 任务?

转载 作者:数据小太阳 更新时间:2023-10-29 07:42:11 25 4
gpt4 key购买 nike

我想在 db/ 目录中生成文件 my.db。我不熟悉如何在常规任务 中构建文件目录 任务。帮助!

task :create, [:name, :type] do |t, args|
args.with_defaults(:name => "mydb", :type => "mysql")
directory "db"
file "db/my.db" => "db" do
sh "echo 'Hello db' > db/my.db"
end
puts "Create a '#{args.type}' database called '#{args.name}'"
end

最佳答案

以下代码将创建数据库和文件,除非已经存在...

如果您希望在单个 rake 任务中使用命令,您可以使用它

Dir.mkdir("db") unless Dir.exists?("db")
unless File.exists?("db/my.db")
File.open("db/my.db", 'w') do |f|
f.write("Hello db")
end
end

如果你想使用 rake 提供的文件任务,你需要这样做......

# Rakefile
directory "db"

file "db/my.db" => 'db' do
sh "echo 'Hello db' > db/my.db"
end

task :create => "db/my.db" do
end

在这个例子中,你实际上告诉 rake 创建名为“db”和“db/my.db”的任务,它们具有创建目录或文件的副作用。

希望这对您有所帮助,对于最初的混淆感到抱歉 :)

关于ruby - 如何在常规任务中构建文件和目录 Rake 任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7607295/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com