web-dev-qa-db-ja.com

RoboCopyが非表示のシステムフォルダーを作成するのはなぜですか?

フォルダーの内容を別のハードドライブにミラーリングするためにRoboCopyを試してみると思いました。そしてそれはうまくいったようです。しかし、何らかの理由で、宛先フォルダーを表示するには、隠しファイル、フォルダー、ドライブを有効に表示と無効の両方を実行する必要があります=)保護されたオペレーティングシステムファイルを非表示にします。どうしてこれなの?コピー元とコピー先の両方のフォルダは、最初は表示ディレクトリと通常のディレクトリの両方でした。その宛先フォルダーのプロパティを開くと、Hidden属性も無効になります。ここで何が起こっているのですか?

管理者のコマンドプロンプトで実行したためですか?それとも、モディファイアの選択に問題がありますか?それともrobocopyは本当にこのように機能しますか?

robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA

Update:別のドライブを別のフォルダにコピーしようとしましたが、同じですそこで起こっていること。しかし、フォルダを別のフォルダにコピーしようとすると、宛先フォルダは通常のままです。ドライブをコピーしたからでしょうか?もしそうなら、これをどうやって防ぐことができますか?ドライブ全体を本当にコピーしたいので...

10
Svish

私のシステム(Vista)では、Powershellはc:\ドライブを隠し属性とシステム属性の両方が設定されているものとして表示します。

    PS C:\Users\michael.DOMAIN> Get-Item c:\


    Directory:


Mode           LastWriteTime       Length Name
----           -------------       ------ ----
d--hs     8/18/2009 12:19 PM        <DIR> C:\

ファイルをコピーした後、attribを使用して修正できます。 attrib /?詳細については。

9
M Aguilar

ディスクのルートから非表示/システムのシステムボリューム情報をコピーする必要があります。コピーされた場合、ターゲットディレクトリは同じ属性のシステム/非表示になります。

コピーする前にディレクトリを作成しても、robocopyはそれを非表示にするため、役に立ちません。

/A-:SHシステムファイルを無視するように切り替えます。

この詳細情報 Microsoft Technetディスカッション

9
xcxc

私もこの問題に遭遇しました。この隠しフォルダは、ソースディレクトリがドライブのルートである場合に表示されるようです。 D:\またはF:\。これらのフォルダーにはシステム属性と非表示属性が含まれ、ソースルートフォルダーであるため、attrib -s -hコマンドで削除することはできません。

この例では、F:\がソースG:\が宛先です。

PowerShellで属性を確認できます。ディレクトリ、非表示、およびシステムのモードd--hsが表示されます。 get-itemコマンドC:\> Get-Item F:\をお試しください

フォルダーが存在する場合、Robocopyはおそらくそれを隠しフォルダーとして作成しません。 /CREATEを使用するとうまくいく、または事前に手動でフォルダを作成できるといういくつかの投稿を読みました。これを完全に検証するには、他の組み合わせだけでなく、さらにテストを行う必要があります。

それ以外の場合は、attrib -h -s G:\Destination_Folderを実行して、コピー後にシステムと非表示の属性を削除できます。

6
JP Babiera