Исполнимые скрипты
Преобразование скриптов Deno в исполняемые может быть полезно при создании небольших инструментов или утилит для задач, таких как обработка файлов, обработка данных или повторяющиеся задачи, которые вы хотите запускать из командной строки. Исполнимые скрипты позволяют создавать импровизированные решения без необходимости настройки всего проекта.
Создание примера скрипта
Чтобы сделать скрипт исполняемым, начните его с символа решётки, (иногда называемого shebang). Это последовательность символов (#!), которая сообщает операционной системе, как выполнить скрипт. За ней следует путь к интерпретатору, который должен использоваться для выполнения скрипта.
Чтобы использовать символ решётки в Windows, вам необходимо установить Windows Subsystem for Linux (WSL) или использовать оболочку типа Unix, например Git Bash.
Мы создадим простой скрипт, который выводит путь установки Deno, используя API Deno.env.
Создайте файл с именем hashbang.ts со следующим содержимым:
#!/usr/bin/env -S deno run --allow-env
const path = Deno.env.get("DENO_INSTALL");
console.log("Deno Install Path:", path);
Этот скрипт сообщает системе использовать среду выполнения deno для запуска скрипта. Флаг -S разделяет команду на аргументы и указывает, что следующий аргумент (deno run --allow-env) должен быть передан команде env.
Затем скрипт извлекает значение, связанное со переменной среды, названной DENO_INSTALL, с помощью Deno.env.get() и присваивает его переменной под названием path. Наконец, он выводит путь в консоль, используя console.log().
Выполнение скрипта
Для выполнения скрипта вам может потребоваться предоставить скрипту разрешение на выполнение. Вы можете сделать это, используя команду chmod с флагом +x (для выполнения):
chmod +x hashbang.ts
Вы можете выполнить скрипт непосредственно в командной строке с помощью:
./hashbang.ts
Использование hashbang в файлах без расширения
Для краткости вы можете опустить расширение для имени файла вашего скрипта. В этом случае укажите его с помощью флага --ext в самом скрипте, затем вы можете запустить скрипт, используя только имя файла:
$ cat my_script
#!/usr/bin/env -S deno run --allow-env --ext=js
console.log("Hello!");
$ ./my_script
Hello!
🦕 Теперь вы можете напрямую запускать скрипты Deno из командной строки! Не забудьте установить разрешение на выполнение (chmod +x) для файла скрипта, и вы готовы к созданию всего, от простых утилит до сложных инструментов. Ознакомьтесь с примерами Deno для получения вдохновения о том, что вы можете наскриптовать.
© 2018–2024 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/tutorials/hashbang