Задать вопрос
@kavabangaungava

Что означает данная конструкция в bash?

Подскажите, что означает вот такая конструкция
programm=${0##*/}
  • Вопрос задан
  • 144 просмотра
Подписаться 1 Средний 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик буткемп
    4 месяца
    Далее
  • Яндекс Практикум
    Фулстек-разработчик
    16 месяцев
    Далее
Решения вопроса 1
xotkot
@xotkot
хорошо есть и хорошо весьма
если проделать в консоли
$ echo ${0}
/usr/bin/zsh
$ echo ${0##*/}
zsh

выведет текущую оболочку
если используется в скрипте то выведет имя скрипта
где нулевой параметр $0 - это имя запускаемого скрипта(в данном случае оболочки), если при запуске указывается путь то он также будет входить в имя
по параметрам командной строки детальнее смотри тут

а по поводу ${STR##*/} смотри parameter-expansions, если кратко то конкретно здесь он служит для выделения имени(краткого) из пути
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы