Ruby 通过`gets.chomp将文件移动到新创建的目录中`
该程序的目的是通过Ruby 通过`gets.chomp将文件移动到新创建的目录中`,ruby,mkdir,Ruby,Mkdir,该程序的目的是通过gets.chomp将SD卡上的图像从问题复制到新文件夹中。我找不到从名为new\u batch的gets.chomp变量创建新目录的方法。你能告诉我哪里做错了吗 Dir.chdir '/home/moot/pickaxe/pics' pic_names = Dir['/media/moot/**/*.{CR2,cr2,JPG,jpg}'] puts nil puts "What would you like to call this batch? e.g Subject_L
gets.chomp
将SD卡上的图像从问题复制到新文件夹中。我找不到从名为new\u batch
的gets.chomp
变量创建新目录的方法。你能告诉我哪里做错了吗
Dir.chdir '/home/moot/pickaxe/pics'
pic_names = Dir['/media/moot/**/*.{CR2,cr2,JPG,jpg}']
puts nil
puts "What would you like to call this batch? e.g Subject_Location"
puts nil
batch_name = gets.chomp
require 'fileutils'
FileUtils::mkdir_p "#{batch_name}"
Dir.chdir '/home/moot/pickaxe/pics/#{batch_name}'
puts nil
print "Downloading #{pic_names.length} Files: "
pic_number = 1
pic_names.each do |name|
print 'ˁ˚ᴥ˚ˀ '
new_name = if pic_number < 10
"#{batch_name} 0#{pic_number}_#{Time.now} .CR2"
else
"#{batch_name} #{pic_number}_#{Time.now} .CR2"
end
require 'fileutils'
include FileUtils
cp(name, new_name)
pic_number = pic_number + 1
end
puts nil
puts "Move Complete."
Dir.chdir'/home/moot/picaxe/pics'
pic_names=Dir['/media/moot/***.{CR2,CR2,JPG,JPG}']
等于零
放置“您希望将此批次称为什么?例如主题位置”
等于零
batch\u name=gets.chomp
需要“fileutils”
FileUtils::mkdir_p“#{batch_name}”
Dir.chdir'/home/moot/pickaxe/pics/#{batch_name}
等于零
打印“下载#{picu names.length}文件:”
图片编号=1
pic|u name.每个do|name|
打印“ˁ˚”ᴥ˚ˀ '
新名称=如果图片编号<10
“#{batch_name}0#{pic_number}#{Time.now}.CR2”
其他的
“#{batch_name}#{pic_number}#{Time.now}.CR2”
结束
需要“fileutils”
包含FileUtils
cp(名称,新名称)
图片编号=图片编号+1
结束
等于零
将“移动完成”
为什么我们不简单地做这样的事情呢
Dir.mkdir("#{batch_name}")
你能把你的代码放在代码标签里吗?不是那样可读的。在mkdir中,您最好将创建文件夹的路径也放在其中,chdir是不必要的,那么您是否尝试过通过
FileUtils::mkdir\u p”/home/moot/pickaxe/pics/{batch\u name}“
创建它?谢谢,是的,成功了。