Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата Friek:
Продолжу сжимать код, надо посмотреть, что там команда for делает »
Например однотипное:
Цитата Friek:
Код: Выделить весь код
mkdir "%CD%\Documents"
mkdir "%CD%\Downloads"
mkdir "%CD%\Favorites"
mkdir "%CD%\Music"
mkdir "%CD%\Pictures"
mkdir "%CD%\Videos"
»
меняется на:
Код: Выделить весь код
for %%i in ("Documents" "Downloads" "Favorites" "Music" "Pictures" "Videos") do (
	mkdir "%CD%\%%~i"
)
А такое:
Цитата Friek:
Код: Выделить весь код
attrib +s +h "%CD%\Users\Public\Documents\desktop.ini"
attrib +r "%CD%\Users\Public\Documents"
attrib +s +h "%CD%\Users\Public\Downloads\desktop.ini"
attrib +r "%CD%\Users\Public\Downloads"
attrib +s +h "%CD%\Users\Public\Music\desktop.ini"
attrib +r "%CD%\Users\Public\Music"
attrib +s +h "%CD%\Users\Public\Pictures\desktop.ini"
attrib +r "%CD%\Users\Public\Pictures"
attrib +s +h "%CD%\Users\Public\Videos\desktop.ini"
attrib +r "%CD%\Users\Public\Videos"
»
на:
Код: Выделить весь код
set sRootPath=%CD%\Users\Public

for %%i in ("Documents" "Downloads" "Music" "Pictures" "Videos") do (
	attrib.exe +s +h "%sRootPath%\%%~i\desktop.ini"
	attrib.exe +r    "%sRootPath%\%%~i"
)
Кстати, а где в последнем «Favorites» ?! А то можно было бы во всех:
Скрытый текст
Код: Выделить весь код
for %%i in ("Documents" "Downloads" "Favorites" "Music" "Pictures" "Videos") do …
заменить на однократное:
Код: Выделить весь код
set sFolders="Documents" "Downloads" "Favorites" "Music" "Pictures" "Videos"
и по месту:
Код: Выделить весь код
for %%i in (%sFolders%) do …

Естественно, и более крупные куски однотипного вида, наподобие:
Код: Выделить весь код
rem создание файла "%CD%\Downloads\desktop.ini"
(	echo.
	echo [.ShellClassInfo]
	echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21798
	echo IconResource=%SystemRoot%\system32\imageres.dll,-184
	echo [ViewState]
	echo Mode=
	echo Vid=
	echo FolderType=Generic
)> "%CD%\Downloads\desktop.ini"
подлежат подобной же нормализации.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:30, 08-11-2014 | #8