badman_n
@badman_n

Что и как в bash?

Всем привет ! Сильное желание научиться писать скрипты на bash (что то в программирование знаю) .
Установил ubuntu на виртуальную машину, есть книжка, но не могу понять где писать. Нужно устанавливать среду разработки?
  • Вопрос задан
  • 139 просмотров
Пригласить эксперта
Ответы на вопрос 6
sublime3 - вполне себе пойдет, я пишу в vim но для старта куда удобней sublime
для старта выучи что такое
1. выучи команду
man ls
и
ls --help
пойми в чем их разница и вдолби в голову что это то с чего начинается любая работа в баш.

В начале выучи что такое код завершения команды, ну и как следствие
stdin
stdout
stderr
Научись работать с этими потоками. без них никуда, да это проще чем кажется.

НО нужно что-то подавать на эти потоки следоватлеьно тебе нужны
ls
cd
pwd - нужна как ни странно
tail -f - вывод в потоке
дальше гугл плюс man и --help

В совершенстве нужно знать grep - чем больше тем лучше
find - так же чем больше тем лучше, когда ты собираешся работать с массивами файлов по маске.

&& - упрощеная конструкция возврата положительного кода завершения
|| -не тру завершение кода
awk - тоже редактор потока
sed - редактор потока
ну и научись передавать все это художество |
это вообще легко
ну и xargs как апофиоз этого
Далее уже можно IF учить и тд и тп но по факту у тебя уже будет
1. работа с потоком ты ее понял и тебе нет проблемы получить вывод из sttderr его части сделать какое-то минимальное условие используя упрощеную ифку
сед позволит тебе редактировать эти данные на лету.
файнд позволит работать с кучей файлов по мкске и тд
grep -без него ни ногой.

Ну и да на последок тебе нужно понять как работают права в линук + владельцы и группы chmod chown
то что запускаемость это атрибут

Со временем прийдет понимание что линукс умеет тольк показывать буковки и брать буковки, откуда они появились его не особо интересуют, принт ли это данных из бд, или последствие пхп скрипта.
ты указал ему файл интерпритатора и подал на него данные, он че-то тебе выплюнул на один из потоков, ты его поймал и что-то с ним сделал.
Дальше количество утилит не имеют значения, ты открываеш ман смотриш и работаеш.
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
  1. берешь любой текстовый редактор(тот же sublime) и записываешь в него код, например:
    #!/usr/bin/env bash
    
    echo "Моя первая программа на баш"

    первая строка обязательна, она вызывает интерпретатор баша.
    сохраняешь файл как myprogram.sh
  2. делаешь полученный файл исполняемым(тупо вбиваешь команду в консоли где лежит файл):
    chmod +x myprogram.sh
  3. запускаешь программу там же в консоли:
    ./myprogram.sh

это всё что нужно знать для начала
шпаргалка по баш
также на самом хабре есть неплохой курс по баш - Bash-скрипты
Ответ написан
@AVKor
Да в любом редакторе можно писать, в котором есть подсветка кода для bash.
Ответ написан
@MatrixKiller
Среда разработки для баш не нужна. Текстовый редактор и командная строка.
Ответ написан
@FanatPHP
Чебуратор тега PHP
В самом простом варианте, скрипт на баш - это просто комманды, написанные в столбик. примерно как bat файл в винде (если ты конечно настолько хорошо знаком с виндой).
В общем осваивай пока просто команды баша - ls там, ln, wc, cp, cat, less, sort, grep - и со временем научишься и скрипты писать

Ну а чтобы редактировать скрипты, сразу осваивай vim.
Ответ написан
CityCat4
@CityCat4
Если я чешу в затылке - не беда!
Достаточно любого текстового редактора. Во встроенном редакторе mc есть подсветка синтаксиса. Диалоговых отладчиков нет - только пакетный (встроенный в сам bash).

Cначала советую внимательно прочитать man bash.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы