将文件复制到目录?

李惠

我有一个Ruby程序,可以将文件从源文件夹复制到目标文件夹。

C:\srcdir\testfile.txt是源文件夹,C:\targetdir是目标文件夹。

该程序不断报告错误:

copy_files.rb:11:in block in <main>': uninitialized constant FileUtils (NameError)

为什么?这是我的代码:

sourcedir = "C:\\srcdir"
targetdir = "C:\\targetdir"
Dir.foreach(sourcedir){
  |f|
  filepath = "#{sourcedir}\\#{f}"
  if !(File.directory?(filepath)) then
    if File.exist?("#{targetdir}\\#{f}") then
      puts("#{f} already exists in target directory (not copied)")
    else
      FileUtils.cp(filepath, targetdir)
      puts("Copying... #{filepath}")
    end
  end
}
锡人

这是未经测试的代码,但是更接近我的编写方式:

SOURCEDIR = 'C:/srcdir'
TARGETDIR = 'C:/targetdir'

Dir.foreach(SOURCEDIR) do |f|
  filepath = File.join(SOURCEDIR, f)
  if !File.directory?(filepath) 
    if File.exist?(File.join(TARGETDIR, f) 
      puts "#{ f } already exists in target directory (not copied)"
    else
      print "Copying #{ filepath }... "
      FileUtils.cp(filepath, TARGETDIR)
      puts "done"
    end
  end
end

当然,您的操作系统将使其变得更加容易。批处理和外壳文件以及操作系统级别的命令就是为此而创建的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将文件列表复制到目录

来自分类Dev

将文件复制到最新目录

来自分类Dev

无法将目录文件复制到其他目录

来自分类Dev

将目录文件复制到当前目录

来自分类Dev

无法将目录文件复制到其他目录

来自分类Dev

将html文件从源目录复制到构建目录

来自分类Dev

将文件从文件阵列复制到目录

来自分类Dev

automake:如何将文件复制到构建目录?

来自分类Dev

使用系统将文件复制到工作目录

来自分类Dev

使用PowerShell将文件从tfs versioncontrol复制到目录

来自分类Dev

Bash:将文件复制到最新目录

来自分类Dev

MSBuild使用通配符将文件复制到目录路径

来自分类Dev

将exe文件复制到Qt构建目录

来自分类Dev

将syslog文件复制到Linux中的新目录

来自分类Dev

使用PowerShell将文件从tfs versioncontrol复制到目录

来自分类Dev

如何使用ant将文件复制到特定目录?

来自分类Dev

GruntJS仅将插件文件复制到目录中

来自分类Dev

将文件复制到子目录

来自分类Dev

使用cp将单个文件复制到多个目录

来自分类Dev

将文件复制到目录时自动运行命令

来自分类Dev

将文件复制到创建的目录中

来自分类Dev

将文件从网络复制到本地目录

来自分类Dev

将exe文件复制到Qt构建目录

来自分类Dev

如何将随机文件复制到目录

来自分类Dev

如何将文件复制到子目录?

来自分类Dev

将目录结构复制到枚举的文件夹

来自分类Dev

将文件从ROOT复制到主目录

来自分类Dev

将特定文件复制到其他目录

来自分类Dev

通过 Gradle 将文件复制到构建目录