大量のフォルダの2階層下にあるファイルを一気にコピーしたいです.
Show older comments
階層が2つ以上違うフォルダへのアクセスの仕方を教えてください.
大量のフォルダにある2階層下のファイルを一気に 現在の階層にコピーしたいのですが...
1 Comment
Akira Agata
on 14 Jan 2018
例えばカレントフォルダを folder0 として、この下に大量のフォルダ(folder1, folder2,...,folderN) があり、さらにその下のフォルダ(例えばfolder1 の下の folder11,folder12,...など) 内のファイルをすべて folder0 にコピーしたいということでしょうか。
また、folder0 配下のファイルはすべてこれら2階層下のみ(つまり1階層下や3階層下にはファイルが存在しない)で、ファイル名の重複は無いと考えてよろしいでしょうか。
Answers (1)
1つ上の階層にコマンドからアクセスするには、例えばフォルダ移動の場合は ../ を使って
>> cd ../
のようにできます。 ../../ ですと2つ上になります。コピーの場合は copyfile コマンドを使用します。 例えば2階層上のフォルダにある .m ファイル (../../*.m) を現在のフォルダ (./) にコピーするには以下のようなコマンドを使用します。
>> copyfile ../../*.m ./
1 Comment
Akira Agata
on 20 Jan 2018
階層の数に関係なく、例えばカレントフォルダ配下の全ての .m ファイルを現在のフォルダにコピーするのであれば、以下の方法で可能です。
fileList = dir('./**/*.m');
for kk = 1:numel(fileList)
copyfile(fullfile(fileList(kk).folder,fileList(kk).name),'./');
end
Categories
Find more on ファイルの操作 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!