Всем привет! В этой небольшой статье я покажу что такое шебанг и как сделать простой файл исполняемым. Погнали!
Создадим простой файл test.txt
touch test.txt
Откроем его через любой доступный редактор и запишем.
#!/bin/bash
echo "Процессы"
ps ax
Что же мы здесь видим! Последовательность двух символов решетки и восклицательного знака (#!) в начале файла называется шебангом в программировании. Далее указывается полный путь (/bin/bash) до интерпретатора который будет исполнять код файла. И затем идет сам код. В нашем случае интерпретатором является bash который отвечает за консольные команды, а кодом команды linux. Каждая команда должна быть указана с новой строки, их выполнение осуществляется последовательно.
Для запуска файла необходимо сделать его исполняемым.
sudo chmod +x test.txt
После чего его можно запустить.
./test.txt
В результате в консоль будет выведен текст "Процессы" и список всех запущенных процессов системы. Как видите здесь ничего сложного нет.
Исполняемые файлы можно запускать не только через консоль но и двойным кликом по самому файлу.
Пример, изменим содержимое файла test.txt
#!/bin/bash
gnome-terminal
И попробуем запустить его двойным кликом по файлу. В результате при запуске откроется дополнительный терминал, благодаря выполнения команды 'gnome-terminal'.
В завершение рассмотрим пример с использованием другого интерпретатора, допустим php.
Изменяем содержимое файла test.txt.
#!/usr/bin/php
<?php
$code = file_get_contents("https://webfanat.com");
file_put_contents(__DIR__.'/исходный код.txt', $code);
Как видите путь (/usr/bin/php) к интерпретатору изменился и далее следует код php. Заметьте что расширение самого файла (txt) мы не меняли.
Запускаем!
В результате клика по test.txt мы смогли спарсить исходный код страницы https://webfanat.com и поместить его в сгенерированный файл 'исходный код.txt'.
Вот такие вот интересные штуки можно делать в linux используя шебанг. На этом у меня все.
Подписывайтесь на группу Вконтакте и переходите на канал Youtube.
Всего вам хорошего!