====== Переменные окружения ====== * [[https://ru.wikipedia.org/wiki/Переменные_среды|Переменные среды]] * [[https://stackoverflow.com/questions/56003777/how-to-pass-environment-variable-in-kubectl-deployment|how to pass environment variable in kubectl deployment?]] ===== Управление процессами через переменные окружения ===== ==== Установленные переменные окружения ==== * [[https://askubuntu.com/questions/150210/how-do-i-set-system-wide-proxy-servers-in-xubuntu-lubuntu-or-ubuntu-studio|System-wide proxies in Ubuntu Studio, Xubuntu and XFCE must be set via environment variables]] $ set $ env $ ps eaxwww ==== Установка переменных окружения ==== $ cat .bashrc ... export http_proxy=http://proxy.isp.un:3128/ export https_proxy=http://proxy.isp.un:3128/ export no_proxy=localhost,127.0.0.1,isp.un,corpX.un ... # cat /etc/skel/.pam_environment # cat /etc/environment ... #http_proxy=http://gate.corpX.un:3128 https_proxy=http://gate.corpX.un:3128 no_proxy=localhost,127.0.0.1,isp.un,corpX.un $ set -a; source .env; set +a $ LANG="" date $ LANG="ru_RU.UTF-8" date $ EDITOR=nano crontab -e $ export http_proxy=http://gate.corpX.un:3128 $ wget http://gate.isp.un/virus.zip ===== Присваивание значений переменным окружения в shell ===== ==== Статические значения ==== === Текстовые === $ a=Hello $ set | grep '^a' $ echo $a $ export a $ env | grep '^a' $ dir=/bin $ ls -l $dir $ echo $a $ a=pwd $ $a $ a='Hello World' $ a="Hello World" $ a=Hello\ World $ a="Hello" $ b=$a $ b='$a World' $ b="$a World" $ b=$a\ World $ b=\$a\ World $ b=$aWorld $ b=${a}World === Арифметические === $ a=3+6 $ a=$((3+6)) $ a=$((a*6)) ==== Результаты выполнения программ ==== $ dir=`pwd` $ dir=$(pwd) $ cd $dir $ d=`date '+%Y.%m.%d'` $ rnd=`jot -r 1 1 10` $ filecount=`ls /bin | wc -l` $ a=1 $ a=$(echo 30/7 | bc -l) ==== Ввод пользователя ==== $ echo -n "Enter Name: "; read a; echo Hello "$a" ==== SHELL подстановки имен файлов ==== $ a=/bin/c* ==== Чтение значений переменных окружения ===== $ request='GET /index.html HTTP/1.1' $ echo ${request#GET /} $ echo ${request% HTTP*} $ PHONE='' $ unset PHONE $ PHONE=84951111111 $ echo ${PHONE:-84959999999} BRANCH=${1:-master} bash$ PHONE=+74951234569 bash$ echo ${PHONE: -10} ==== Аргументы приложения ==== set a b c echo $3 $2 $1 $* ===== Удаление переменных окружения ===== $ unset CLICOLOR