1

我有一个复制脚本的基础(使用xcopy)来复制文件以从一台电脑迁移到另一台电脑(在我的例子中是xp到win7)。

这是代码:...

xcopy /I /Y /E /F "C:\Documents and Settings\%USERNAME%\Favorites\*.*" h:\Restore\IE favorites
xcopy /I /Y /S /F "C:\Documents and Settings\%USERNAME%\Desktop" h:\restore\desktop
xcopy /I /Y /F "C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Outlook\*.nk2" h:\restore\Outlook-NK2
xcopy /I /Y /F "C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Signatures" h:\restore\Signatures
xcopy /I /Y /F "C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Office\*.acl" h:\restore\Office-AutoCorrectLists
xcopy /I /Y /F "C:\Documents and Settings\%USERNAME%\Local Settings\Application Data\Microsoft\Outlook\*.pst" h:\restore\PST1
xcopy /I /Y /F "C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Outlook\*.pst" h:\restore\PST2

xcopy /I /Y /F "C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Outlook" h:\restore\Roaming\Outlook
xcopy /I /Y /F "C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Signatures" h:\restore\Roaming\Signatures

regedit /s /e H:\restore\HKCU-RestoreODBC.reg "HKEY_CURRENT_USER\Software\ODBC\ODBC.INI"
regedit /s /e H:\restore\HKLM-RestoreODBC.reg "HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI"

regedit /s /e H:\restore\restornetwork.reg "HKEY_CURRENT_USER\Network"
regedit /s /e H:\restore\HKLM-RestoreIECert_machine.reg "HKEY_LOCAL_MACHINE\Software\Microsoft\SystemCertificates"
regedit /s /e H:\restore\HKCU-RestoreIECert_machine.reg "HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates"
regedit /s /e H:\restore\RestorePrinterConnections.reg "HKEY_CURRENT_USER\Printers\Connections

我想在代码的 PST 部分的复制中添加一个进度条,但我不知道从哪里开始。有人介意帮助我提供一些关于如何开始的提示吗?

非常感谢。

4

2 回答 2

3

Use ROBOCOPY instead of XCOPY. See ROBOCOPY /?

于 2013-08-07T11:17:17.677 回答
2

如果您不能按照 RGuggisberg 的建议使用 robocopy,则可以使用旧的点表示法:

echo.|set /p=.

每次调用它,它都会放下一个点。例如,您可以按如下方式调用它:

:: hide xcopy output with > nul so dot ticker output will be visible
xcopy ... > nul
call :percentage
regedit ... > nul
call :percentage
goto :EOF

:percentage
echo.|set /p=.
goto :EOF

它也可以在任何操作之后调用。

于 2013-08-07T13:37:23.713 回答