Comments 31
Автоматизацию лучше делать не на баше.
Мне не нравятся глаза у этих нарисованных человечков.
Быть может, им стоит ознакомиться, к примеру, с этой серией уроков?
Bash-скрипты: начало
Которая а) тут же, на хабре, б) легко гуглится по многим вопросам, связанным с башем.
А эту аудиторию точно нужно на хабре искать?
В итоге админы настраивают окружение, а потом мы даем им скрипт, просим запустить его и прислать результаты.
А почему ваши админы не настраивают скриптом окружение?
Извините, а у Вас начинающие тестировщики принципиально от рута в системе работают? У обычного пользователя прав на создание произвольных файлов и папок в /home
не будет, и выполнение скрипта-примера приведёт к ошибке. А дефолтный root
— это известный антипаттерн, даже для виртуалок и контейнеров. Новичок же привыкнет, что "так удобно" и попробуй потом переучи...
А набор команд можно использовать любой. Не работает создание в /home — создавайте в своей домашней директории, делов то)
А набор команд можно использовать любой. Не работает создание в /home — создавайте в своей домашней директории, делов то)
Ну так на то ж они и новички, что таких нюансов могут и не знать. Скопипастят пример в терминал в своей домашней убунте, а он не работает. Всё, приехали! Обучение закончилось. "Какой непонятный и плохой этот ваш баш :("
Ну а сделать команду для домашней директории на копипасту тоже не выйдет, у него пользователь будет с другим именем и снова «какой-то плохой этот ваш баш».
Если цель — именно НАУЧИТЬ башу, то это надо давать песочницу, в которой можно копаться и команды, которые можно копипастить. Но в этой статье такой задачи нет)
Потому что сказать, что
«bash и shell — И то, и другое — интерпретаторы командной строки в линуксе.», это все равно что сказать «ауди и автомобиль — обе машины».
Потому что у любого скрипта в первой строке должен содержаться путь к интерпретатору.
К сожалению, нет.
echo "ls -l" > file
sh file
Путь к интерпретатору нужен если вы хотите пометить файл как исполняемый и выполнять его, а не вызывать интерпретатор и передавать ему скрипт как аргумент
chmod +x file
./file
Стоит заметить, что и в этом случае оно может заработать ( зависит от вашего текущего шелла и возможно еще от чего-то )
И да, писать путь к интерпретатору хороший тон ( универсальность, все дела ), но, мне кажется, не стоит запутывать новичков.
#!/usr/bin/env bash
Что такое bash / shell