我需要检查方法的第三个参数:
def NFS(configsHash, optionsHash, backupType)
我想使用if
语句来检查要保存backupType
的路径。类似的东西:
If #{backupType} == "dir/file/path/name/time"
STDOUT.puts("Backup will be saved to current folder.")
else
STDOUT.puts("Putting into backup folder")
STDOUT.puts(mkdir #{backups})
但我无法正确使用语法。有什么建议吗?
答案 0 :(得分:2)
你也可以这样做:
case backupType
when "dir/file/path/name/time"
puts("Backup will be saved to current folder.")
else
puts("Putting into backup folder")
puts(Dir.mkdir backups)
end
答案 1 :(得分:1)
# Assuming that backupType is a string
if backupType == "dir/file/path/name/time"
print "Backup will be saved to current folder."
else
print "Putting into backup folder"
# This part below is tricky since I don't know what the backups variable is referring to
print Dir.mkdir backups
end
@fotanus在评论中对命名约定提出了很好的建议,但为了确保一致性,我保持名称相同的答案。
答案 2 :(得分:1)
if backupType == "dir/file/path/name/time"
puts "Backup will be saved to current folder."
else
puts "Putting into backup folder"
Dir.mkdir "path/goes/here"
end
请注意,STDOUT已被删除。这是多余的。如果您执行STDOUT.puts.object_id和puts.object_id,您将看到它们引用相同的内容。另外,请注意它是Dir.mkdir;不仅仅是mkdir;它需要在Dir类上调用。
修改为更加惯用。我也放弃了来自Dir.mkdir的投注;因为我认为这不是你想要的。