Войти

Показать полную графическую версию : [решено] Перемещение пользовательской директории. Vista + Se7en


ASloup
15-07-2010, 20:18
очень часто сталкиваюсь с перемещение пользовательской директории. По-умолчанию, находится на диске С:\%USERPROFILE%\. Рутинно, приходится выбирать параметр свойства, закладка папка. И указывать, к примеру другой диск, например, D:\Home\%USERPROFILE%\для \Pictures, \Documents, \Music, \Videos и т.д.
Я не очень правильно понимаю CMD-скрипт, но догадываюсь что оперировать нужно с командой move. А какие еще должны быть? Например, скрипт должен какой-то командой находить эти каталоги.

заранее спасибо…

deepred
15-07-2010, 23:23
ASloup,

CMD сценарий не панацея и MOVE тут не причем ...

Тебе следуют обратиться к разделу реестра - HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders.

Например "Мои документы" имееют следующие параметры: имя - Personal, тип - REG_EXPAND_SZ, значение - %USERPROFILE%\Documents. Вот с этими параметрами и работай.

Либо экспортировав раздел реестра, его отредактировать и снова ввнести через regedit /s, либо через CMD следующим образом:

reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Personal /t REG_EXPAND_SZ /d %новое_расположение\Documents% /f



PS: набери в консоли CMD REG /?

ASloup
16-07-2010, 10:35
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Personal /t REG_EXPAND_SZ /d %новое_расположение\Documents% /f »

и опять рутина по-каталожная. %переменная_окружения% - одна. и привязан путь один. А мне собственно, нужно переместить на диск D:
Бытовая ситуация, установил Висту. У меня два диска, может и больше… но пока два! Для экономии системного раздела я все пользовательские каталоги переношу на другой раздел… При этом если нужна новая переустановка, у меня голова не болит что я что-то не перенес. А есть же еще и папки с конфигурацией любимых программ - Firefox, Photoshop, etc.

вот именно и поэтому решил через CMD запуск от имени администратора оно позволяет, так в ручную не которые папки лишние вопросы задают

deepred
16-07-2010, 17:53
ASloup,

@Echo off
Set bRoot="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
Set bName="Music Pictures Video Personal"& rem Имена папок согласно реестру
Set $DST=AnyDST& rem "AnyDST" - твоя целевая директория

For /f "tokens=1 delims=R" %%a in ('reg query %bRoot% /s ^| Findstr /i %bName%') ^
do if not "%%a"=="" call :moving "%%a"
pause&goto :eof

:moving
set $name=%~1
Set $bname=%$name: =%
Set $DSTname=%$bname:My =%

Reg add %bRoot% /v "%$bname%" /t REG_EXPAND_SZ /d "%$DST%\%$DSTname%" /f && Echo.
goto :eof

Vadikan
22-07-2010, 23:06
ASloup, расположение профиля задается при установке системы файлом ответов. См. первые два поста темы http://forum.oszone.net/thread-139644.html. Это единственный официально поддерживаемый способ.

Ну а пользовательские папки можно твиком реестра перенести, пути выше.




© OSzone.net 2001-2012