web-dev-qa-db-ja.com

Robocopy-多くのディレクトリを除外する

ロボコピーに問題があります。システムディスクのバックアップに使用したいのですが、一部のシステムフォルダを除外したいのですが。しかし、それでもこれらのフォルダの一部をコピーしようとしています。私のバッチファイルはこれです:

robocopy c:\ l:\C\ /r:1 /w:1 /mir /dcopy:T /xjd /xjf /xj /copy:DT /log+: l:\RobocopyLogC.txt /xf "desktop.ini" /xd "$Recycle.Bin" /xd Config.Msi /xd MSOCache/xd Recovery /xd "System Volume Information" /xd Windows /xd "Program Files\Common Files" /xd "Program Files\Internet Explorer" /xd "Program Files\Reference Assemblies" /xd "Program Files\Uninstall Information" /xd "Program Files\Microsoft Analysis Services" /xd "Program Files\Microsoft Mouse and Keyboard Center" /xd "Program Files\Microsoft Office" /xd "Program Files\Microsoft Silverlight" /xd "Program Files\MSBuild" /xd "Program Files\Windows Defender" /xd "Program Files\Windows Journal" /xd "Program Files\Windows Mail" /xd "Program Files\Windows Media Player" /xd "Program Files\Windows Multimedia Platform" /xd "Program Files\Windows NT" /xd "Program Files\Windows Photo Viewer" /xd "Program Files\Windows Portable Devices" /xd "Program Files\Windows Sidebar" /xd "Program Files\WindowsApps" /xd "Program Files\WindowsPowerShell" /xd "Program Files (x86)\Common Files" /xd "Program Files (x86)\InstallShield Installation Information" /xd "Program Files (x86)\Internet Explorer" /xd "Program Files (x86)\Microsoft Analysis Services" /xd "Program Files (x86)\Microsoft Office" /xd "Program Files (x86)\Microsoft Silverlight" /xd "Program Files (x86)\Microsoft.NET" /xd "Program Files (x86)\MSBuild" /xd "Program Files (x86)\Reference Assemblies" /xd "Program Files (x86)\Temp" /xd "Program Files (x86)\Windows Defender" /xd "Program Files (x86)\Windows Mail" /xd "Program Files (x86)\Windows Media Player" /xd "Program Files (x86)\Windows Multimedia Platform" /xd "Program Files (x86)\Windows NT" /xd "Program Files (x86)\Windows Photo Viewer" /xd "Program Files (x86)\Windows Portable Devices" /xd "Program Files (x86)\WindowsPowerShell" /xd "Program Files (x86)\Windows Sidebar" /xd ProgramData\Microsoft /xd "ProgramData\Microsoft Help" /xd "ProgramData\Package Cache" /xd Users\Public /xd Users\Default /xd Users\userName2 /xd Users\userName\AppData\LocalLow\Temp /xd Users\userName\AppData\Local\Temp

私はたくさんのことを試しましたが、何も役に立ちませんでした。手伝って頂けますか?

7
Shortik

複数の/ xdを使用しないでください!最初の/ xdの後ろにすべてのディレクトリを設定するだけです

... /xd "dir1" "dir2" "dir3" ...
17
Phab

/xdオプションは、相対パスではうまく機能しないようです。代わりに絶対パスを使用してみてください。例:

robocopy c:\ l:\C\ /r:1 /w:1 /mir /dcopy:T /xjd /xjf /xj /copy:DT ... 
   /xd "C:\$Recycle.Bin" 
   /xd C:\Config.Msi 
   /xd C:\MSOCache
   /xd C:\Recovery 
   /xd "C:\System Volume Information" 

(読みやすくするために分割します。)

4
Harry Johnston

パス内の二重引用符記号(例: "C:\ $ Recycle.Bin")を単一引用符記号( 'C:\ $ Recycle.Bin')に置き換えます。これは、ドル文字「$」が変数を開始し、「$ Recycle」という名前の変数として解釈されるためです。

2
Piotr Napora

これに対する私の解決策は、含めたり除外したりするファイルまたはディレクトリを含む.txtファイルを作成することでした。これらのファイルは、「バックアップ」フォルダーの下のサブフォルダー「rcXcludes」にあります。ファイルに名前を付ける方法は次のとおりです。 「rc」(robocopyの場合)を前に付け、次にrobocopyコマンドでアプリケーションまたはファイルシステムの一部をわかりやすく表記し、「B」または「R」(バックアップまたは復元の場合)、「I」を追加します。または「X」(含めるまたは除外する場合)、次に「D」または「F」(ディレクトリまたはファイルの場合)。各エントリを二重引用符とエントリ間のスペースで囲みます。 「インクルード」ファイルにはファイルまたはディレクトリを含めることができますが、ディレクトリには末尾に円記号を付ける必要があります。ディレクトリの「除外」ファイルでは、末尾の円記号を使用しません。すべてのディレクトリエントリは、robocopyコマンドのソースパスに関連しています。これらの.txtファイルの内容全体は1行に収める必要があり、notには改行が含まれています。バッチファイルでは、SET/Pコマンドを使用して.txtファイルを変数にインポートします。次に、これらの変数をFILESまたは/ XFまたは/ XDの後に使用します。たとえば、「デフォルト」フォルダ全体をコピーせずに現在のユーザーのChromeプロファイルをバックアップするには、次を使用します。

rcChromeBIF.txt  
"Bookmarks" "Custom Dictionary.txt" "Extension Cookies" "Favicons" "History" "Login Data" "Preferences" "Top Sites" "Visited Links" "Web Data" "Databases\" "Extensions\" "Local Storage\" "Plugin Data\" "User Scripts\" "User StyleSheets\"

rcChromeBXF.txt  
"Bookmarks.bak" "ChromeDWriteFontCache" "Cookies" "Cookies-journal" "Current Session" "Current Tabs" "Extension Cookies-journal" "Favicons-journal" "Google Profile.ico" "History Provider Cache" "History-journal" "Last Session" "Last Tabs" "Login Data-journal" "Network Action Predictor" "Network Action Predictor-journal" "Network Persistent State" "Origin Bound Certs" "Origin Bound Certs-journal" "QuotaManager" "QuotaManager-journal" "README" "Secure Preferences" "Shortcuts" "Shortcuts-journal" "Top Sites-journal" "TransportSecurity" "Web Data-journal"

rcChromeBXD.txt  
"Application Cache" "Cache" "data_reduction_proxy_leveldb" "Extension State" "File System" "GPUCache" "IndexedDB" "JumpListIcons" "JumpListIconsOld" "Local Extension Settings" "Media Cache" "Pepper Data" "Platform Notifications" "Service Worker" "Session Storage" "Storage" "Thumbnails" "Web Applications"

たとえば、C:\ Backupのbatファイル。

REM ChromeBak.bat
SET chromeprofdir=Google\Chrome\User Data\Default
SET /P rcChrmBIF=<C:\Backup\rcXcludes\rcChromeBIF.txt
SET /P rcChrmBXF=<C:\Backup\rcXcludes\rcChromeBXF.txt
SET /P rcChrmBXD=<C:\Backup\rcXcludes\rcChromeBXD.txt
robocopy "%LOCALAPPDATA%\%chromeprofdir%" "H:\ChromeBackup\%chromeprofdir%" %rcChrmBIF% /E /ZB /COPY:DAT /DCOPY:T /MT:4 /XJ /XF %rcChrmBXF% /XD %rcChrmBXD% /R:10 /W:2 /TBD /NP /V /TS /Log+:"H:\ChromeBackup\ChromeBackup.log"
0
Charlie C