Сценарії командного рядка
Для зберігання сценаріїв, які я використовую з командного рядка, я створюю Command Line Scripts
каталог у розділі Файли програм і додаю його до змінної середовища PATH. Я використовую такий командний файл для переліку та редагування цих сценаріїв:
@echo off
setlocal
set UTILPATH=C:\Program Files\System Tools\Command Line Utilities
if not "x%1"=="x" (
start "" "notepad" "%UTILPATH%\%1.bat"
) else (
dir /b "%UTILPATH%" | grep -v com.bat | grep -P "(exe|bat|cmd)" | sed "s/\.\(exe\|bat\|cmd\)//"
echo.
)
(зауважте, що фільтрування списку каталогів залежить від деяких команд unix, які я встановив через Cygwin )
Я даю йому назву com.bat, (скорочення від command), тоді я можу:
- перелічіть сценарії в цьому каталозі, набравши
com
в командному рядку
- відредагуйте будь-який сценарій у списку, набравши
com script-name
в командному рядку *, аналогічним чином:
- створити нові сценарії в цьому каталозі, набравши
com new-script-name
в командному рядку *
- і якщо мені коли-небудь потрібно буде редагувати com.bat, я просто вводжу
com com
* Оскільки я використовую Vista, я повинен використовувати командний рядок із підвищеним рівнем захисту, оскільки каталоги під Program Files
захищеними. Для швидкого запуску командного рядка з підвищеними можливостями просто натисніть Win key
; тип cmd
; прес Ctrl+Shift+Enter
; а потім натисніть, Alt+C
щоб підтвердити підказку про висоту. Шість натискань клавіш у підвищеному командному рядку! ([через] [4])
Сценарій запуску
Одним із сценаріїв, які я зберігаю у своєму Command Line Scripts
каталозі, є сценарій, який запускається під час входу до Windows (за допомогою Task Scheduler
, введіть Task
у меню Пуск Vista). Я використовую цей сценарій для налаштування декількох віртуальних дисків за допомогою команди subst до каталогів, до яких я часто звертаюся, або хочу швидкий спосіб доступу в командному рядку або для скорочення імен шляхів у попередженнях компілятора, журналах або результатах налагодження.
Мій сценарій запуску виглядає приблизно так:
@setlocal
@set _MYDOCS_=%USERPROFILE%\Documents
@REM Note: first delete the drives so I can run script again
@REM to fix drives that failed to get mapped
subst /d W:
subst /d T:
subst /d S:
subst /d R:
subst /d N:
subst /d L:
subst /d H:
subst W: "%_MYDOCS_%\Work\SVN Working Copy\Website\trunk\www"
subst T: "%_MYDOCS_%\Work\SVN Working Copy\project 1\trunk"
subst S: "%_MYDOCS_%\Work\SVN Working Copy"
subst R: "%_MYDOCS_%\Work\SVN Working Copy\project 2\branches\12.50"
subst N: "%_MYDOCS_%\Work\SVN Working Copy\project 2\trunk"
subst L: "%_MYDOCS_%\Work\"
subst H: "%_MYDOCS_%\My Projects\Haslers.info\Working Copy"
Зверніть увагу, що subst може бути трохи темпераментним, і іноді диски не створюються, і мені доводиться запускати сценарій запуску знову вручну.