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


10

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

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

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

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


事前にディレクトリを作成しても機能しません。ロボコピーを再度実行するとすぐに、属性によってもう一度非表示になります。属性コマンドは機能します。

回答:


9

私のシステム(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 /?詳細については。


ええ、ええ、私の3台のハードドライブすべてにもこれらの属性があります...奇妙なことに、CドライブがOoでなかったのに、DドライブとEドライブが外部ドライブのフォルダーにロボコピーしたときに、システムドライブが非表示になりました
わかり

非表示のネットワーク共有($)で同じ問題が発生します。私が走ったGet-Itemその共有に、それはまた言うd--hs、私はそれが理由だと思うので!ありがとう!
Chris Haas

これは、Synology NASボックスなど、\\ nas \ sharenameを隠しフォルダとしてマークする一般的なネットワーク共有にも当てはまります。(A)属性を含む/ copyallまたは/ COPY:xAxxxxを使用してrobocopyでそのフォルダーをコピーすると、宛先フォルダーはソースと同じ属性で作成されます。
BeowulfNode42 2014年

9

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

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

/A-:SHシステムファイルを無視するスイッチを追加します。

この中詳細についてのMicrosoft TechNetの議論


6

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

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

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

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

それ以外の場合はattrib -h -s G:\Destination_Folder、コピー後にシステムと隠し属性を削除することができます。


-1

attrib後で実行してもかまわない場合は、M Aguilarのソリューションを使用してください。別の解決策は、事前にターゲットディレクトリを作成することです。

  1. mkdir I:\E
  2. robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA

2
これは役に立ちません-コピー後にEは隠しシステムに設定されます。
Flyto
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.