たくさんのサブフォルダとファイルを含むフォルダがあります。 cmdやpowershellを使用して、フォルダやサブフォルダのディレクトリ構造をコピーせずにコピーする方法はありますか?
空のフォルダもコピーしたい場合。
xcopy C:\ Folders D:\ Folders/t/e
うん。 XCOPY
XCopy source {destination} /t
例
xcopy C:\Folders D:\Folders /t
xcopyについての詳細はこちら http://ss64.com/nt/xcopy.html
XCOPYはまだ機能しますが、Windows Vista以降には、より多くの機能を持つROBOCOPYが含まれています。ファイルなしでフォルダツリー(空のフォルダを含む)をコピーするための一般的な構文は次のとおりです。
robocopy "A:\Source folder" "B:\Destination folder" /e /xf *
各ファイルをコピーしてからそれらを削除する必要のないPowerShellメソッド。
Copy-Item -LiteralPath '.\source' -Destination 'C:\path\to\copy' -Recurse -Filter {PSIsContainer -eq $true}
もっと簡潔に言うと:
copy .\source C:\path\to\copy -r -fi PSIsContainer
ここでの唯一の興味深いトリックはPSIsContainer
プロパティのフィルタリングです。これはディレクトリには当てはまりますがファイルには当てはまりません。
47foldersアプリ、無料の便利なWindowsツールを見てください。まさにあなたがNice GUIを通して必要なことをします。
警告:以前のリンク( http://47foldersapp.com/ )は現在(2017年11月)、衣類の宣伝につながっています。最後の良いインターネットアーカイブのコピーはここ です 。ソフトウェアはまだこのような このようなフリーウェアのダウンロードサイトから入手可能かもしれません 。
それを行うにはPowerShellを使用してください。フォルダのコピーを作成してからRemove-Item -Path "C:\test\*.*" -recurse
私はただフリーウェアMiroirsを使いました。それは内容ではなくフォルダーだけをコピーしたものです(それはオプションです)。
おそらくもっと良い解決策がありますが、私はこれらを見たいと思います:
すべてをコピーしてから、スクリプトでフォルダを空にします。
拡張子がない場合はすべてをコピーするスクリプトを作成してください。拡張子のないファイルがフォルダ内に存在しないのであれば、それは機能しないはずです。フォルダには拡張子がありません。擬似コードではこんな感じになるでしょう。
open_directory($ path);
while($ file = get_directory_content){
if(empty(get_file_extension($ file))){
copy_the_file($ file、$ destination);
}
}
close_directory;