Bash - умная инициализация переменных

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2026
Перейти к:навигация, поиск

Bash - умная инициализация переменных

Пример кода:

COOKIE_FILE="${COOKIE_FILE:-/tmp/3x-ui.cookies.$$}"


Оператор ${VARIABLE:-DEFAULT}
Это механизм подстановки значения по умолчанию.
Если переменная COOKIE_FILE уже существует и не пуста, будет использовано её текущее значение.
Если она не задана или пуста, Bash подставит то, что идет после знака :-.


$$ — это специальная переменная Bash, которая возвращает ID текущего процесса (PID).
Зачем здесь $$?
Использование $$ в названии файла — это классический прием, чтобы избежать конфликтов. Если вы запустите два одинаковых скрипта одновременно, у них будут разные PID. Благодаря этому они не будут пытаться писать данные в один и тот же файл одновременно и не «передерутся» за него.
×
Реклама
ИКС