Как я могу заставить свой компьютер выполнять серию повторяющихся задач с помощью файла сценария в Windows?

3

Когда я хочу обновить свой веб-проект, мне все время приходится выполнять следующие задачи:

  • Откройте cmd.exe .
  • cd в рабочий каталог проекта.
  • Запустите команду localhost в cmd.exe ( ~ jekyll s).
  • Запустите новое окно Chrome (браузер по умолчанию) и введите ссылку http: // localhost: 4000 /

Как я могу заставить свой компьютер делать все это для меня одним двойным щелчком мыши по файлу? Возможно, с помощью сценариев или пакетных файлов?

Varaquilex
источник

Ответы:

3

Вам необходимо написать командный файл в Windows (в случае Linux они называются сценарием оболочки). Это очень легко написать, когда вы знаете, какие команды использовать (В вашем случае вы уже знаете команды). В командном файле вам нужно записать команды в том порядке, в котором вы хотите, чтобы они выполнялись. Чтобы создать пакетный файл, откройте Блокнот и запишите эти команды по порядку и сохраните файл с расширением .bat . Затем вам просто нужно дважды щелкнуть этот файл .bat, и он выполнит всю вашу задачу. Просто приведу пример того, как должен выглядеть ваш командный файл.

cd /your/working/directory/path
jekyll s
start chrome "http://localhost:4000/"

Основные операции ввода / вывода в командном файле

Принимая входные данные от пользователя: [Команда используется set]

Синтаксис: set /p variable_name=[Prompt String]

Пример: set /p loc="Enter the directory path : "

Это запросит ввод от пользователя и назначит его переменной loc.

Отображение сообщения / вывода на экране: [Используемая команда echo]

Синтаксис: echo <your_message_here>

Пример: echo Hello World

Появится «Hello World» на экране. Для того, чтобы распечатать содержимое переменной с помощью echoиспользования echo %variable_name%. Скажем, вы хотите отобразить содержимое переменной my_name. Тогда команда будет echo Hello %my_name%.

Делая ваш сценарий более интерактивным, используя эти команды.

echo off
::The above command hides the commands that are executed and displays only the output of the commands
set /p loc="Enter your project directory location : "
cd /d %loc%
echo Directory changed...
jekyll s
echo Launching browser...
start chrome "http://localhost:4000/"
echo End of script...
pause

::используется для комментирования. Чтобы узнать больше о конкретной команде, используйте /?после имени команды, чтобы отобразить руководство для этой команды, которое содержит информацию о том, что команда делает, и все доступные для нее параметры. Например, чтобы узнать больше о cdкоманде, введите cd /?в командной строке.

Вот хороший учебник для начинающих.

Аян
источник
1
Спасибо за ваш ответ, у меня просто было время взглянуть на него, и я сделал свой пакетный файл. Есть ли у вас какие-либо предложения для начинающих руководство по сценариям Windows? Было бы здорово, если бы вы включили это и в свой ответ :)
Varaquilex
@Varaquilex приветствуется. :) Конечно, я добавлю больше информации о пакетных файлах к ответу, если это поможет вам. Я буду обновлять ответ каждый раз, когда у меня есть время, но если вам нужно что-то конкретное, не стесняйтесь упоминать об этом, и я обновлю его соответствующим образом.
Аян
Только стандартные основы
подойдут
0

Вы должны создать так называемый пакетный скрипт . В Интернете существует множество учебных пособий по началу работы с пакетными сценариями, например, этот , я бы порекомендовал вам прочитать и протестировать некоторые основы, чтобы почувствовать его.

Что касается вашего конкретного случая, откройте Блокнот (не документ Word) и введите команды, которые вы обычно вводите в Командную строку, в комплекте с символами новой строки. Так что-то вроде:

cd C:/yourdirectory
somecommand /parameter
etc...

Теперь сохраните файл, выберите опцию «Все файлы» и сохраните его как scriptname.bat, НЕ.txt

Теперь, если вы запустите файл двойным щелчком, он откроет окно команд и запустит ваши команды.

Вы можете открыть окна браузера, используя:

start "http://localhost:4000/"

Который откроется в вашем браузере по умолчанию.


Некоторые команды могут оказаться полезными при сборке скрипта:

  • @echo OFF - поместите это в верхнюю часть вашего пакетного скрипта, и оно не даст окну перечислить все команды, которые он выполняет.
  • echo Используйте это для отображения сообщений, таких как `echo. Операция копирования завершена
  • pause- Используйте это, чтобы приостановить выполнение пакетных команд, пока вы не нажмете клавишу. Он автоматически попросит вас «нажать любую клавишу для продолжения»
Robotnik
источник