かなり基本的なエラーのように感じるものに遭遇しましたが、私が苦労していることについてのドキュメントを見つけることができません。コードは次のとおりです。
require "fileutils"
def new_name(fn, dest = '/Volumes/External/Different\ Sublevel/Renamed', append = '_01')
ext = File.extname(fn)
File.join( dest, File.basename(fn, ext) + append + ext )
end
Dir[ '/Volumes/External/Example/Sublevels/**/*.xml' ].
select { |fn| File.file? fn }.
each { |fn| FileUtils.cp fn, new_name(fn) }
私がやろうとしているのは、いくつかのファイルを(非破壊的に)移動し、ファイル名を追加することだけです。一部のローカルファイルではうまく機能しますが、機能させるために複数のレベルを../../../
実行しました。外付けドライブの指定に関して何か特別なことはありますか?