3

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

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

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

2 ответа2

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 /? в подсказке.

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

0

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

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

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

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

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

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

start "http://localhost:4000/"

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


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

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

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