-2
@echo off
echo  %DATE%,%TIME%,%USERNAME%,%COMPUTERNAME% >>  \\ds.fordham.edu\Users\migrate.log
mkdir  P:\Saved-%computername%\
net use > P:\Saved-%computername%\SPARES.txt
robocopy "%LIBRARIES%\Music" P:\Saved-%computername%\Music /E  /LOG:P:\Saved-%computername%\copylog.log  /np 
robocopy "%USERPROFILE%\Desktop"     P:\Saved-%computername%\Desktop /E /LOG+:P:\Saved-%computername%\copylog.log /np 
robocopy "%USERPROFILE%\Local Settings\Application Data\Microsoft\Outlook" P:\Saved-%computername%\Outlook *.pst /E /LOG+:P:\Saved-%computername%\copylog.log /np 
robocopy "%USERPROFILE%\" "P:\Saved-%computername%\PKCU  /E /LOG+:P:\Saved-%computername%\copylog.log /np 
robocopy "%LIBRARIES%\Pictures" "P:\Saved-%computername%\Pictures" /E /LOG+:P:\Saved-%computername%\copylog.log /np 
robocopy "%LIBRARIES%\Documents" "P:\Saved-%computername%\Documents" /E /LOG+:P:\Saved-%computername%\copylog.log /np 
pause

Я продолжаю получать

ERROR 2 (0x00000002) Accessing Source Directory
The system cannot find the file specified.

Для каждого каталога / библиотеки. Что-то не так с моим сценарием? Любая информация будет наиболее ценной. Спасибо

1 ответ1

1

Нет переменной %LIBRARIES% . Вместо этого используйте %USERPROFILE% , который укажет на c:\Users\<username> . Вы можете безопасно использовать английские имена (например, Music) независимо от локали.


Каждая "Библиотека" на самом деле является виртуальной папкой, которая отображает контент, собранный из (возможно) множества разных папок. По умолчанию к каждой пользовательской библиотеке прикреплены две папки:

  • %USERPROFILE%\<library_type>
  • %PUBLIC%\<library_type>

Пользователь может добавить любое количество дополнительных папок через панель свойств библиотеки.

Обратите внимание, что предоставленное мною решение (с использованием %USERPROFILE%) не сможет найти дополнительные папки, которые вы, возможно, добавили в свои библиотеки. Однако при настройке по умолчанию это будет хорошо работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .