переменные_окружения

Переменные окружения

Управление процессами через переменные окружения

Установленные переменные окружения

Установка переменных окружения

$ 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
переменные_окружения.txt · Last modified: 2024/01/31 14:00 by val