Как регистрировать, если переменная среды не установлена?

Как написать сценарий оболочки, который проверяет переменную окружения и записывает в файл журнала, если переменная не установлена?

Кроме того, если имя файла, указанное переменной env, не существует, как его создать?

2 Solutions collect form web for “Как регистрировать, если переменная среды не установлена?”

Переменная среды – это та, которая экспортируется в подпроцессы.
Этот сценарий, но приспособиться к вашим потребностям, может помочь. Он использует синтаксис ${var:?word} , с и без : для определения результата:

 #!/bin/sh unset=0 null=0 if ! sh -c 'echo ${var?}' >/dev/null 2>/dev/null; then unset=1 elif ! sh -c 'echo ${var:?}' >/dev/null 2>/dev/null; then null=1 fi echo "unset = $unset" echo "null = $null" 

если я пойму тебя правильно,

env | grep -q ^$VAR && logger -t varlogger "var is unset"

test -f $VAR || touch $VAR

  • Параллелизация sed дает разную производительность
  • Как использовать тройник для захвата STDOUT из кодового блока в имя файла, определенное в блоке?
  • Как сделать grep на удаленном компьютере и распечатать строку, содержащую эти слова?
  • История поиска bash для уже введенной команды
  • Требуется вывод в хорошем формате с использованием сценария оболочки
  • Перечислите любой файл, заканчивающийся на .in и соответствующий .out с помощью сценария оболочки
  • Разархивировать определенные файлы из нескольких ZIP-файлов
  • cp, запущенный из результатов кода, не может stat '/ tmp / somedir' работает в оболочке
  • Что означает синтаксис этой команды оболочки с помощью extglob?
  • Как установить вывод heredoc в локальную переменную
  • grep целые блоки файловой системы на устройствах
  • Interesting Posts

    Регулярное выражение с sed

    Переполнение / tmp смонтировано при наличии свободного места на /

    Каким уведомлением отправляется Firefox при завершении загрузки?

    Поиск правильного dmp tmp на нескольких платформах

    Помимо «apt check», какая команда apt проверяет надежность конфигурации пакетов?

    Цикл forach для вывода ls

    Использовать mdadm в качестве обходного пути из-за отсутствия поддержки badblocks в btrfs

    Настройка часового пояса по всему миру для OpenIndiana Hipster?

    Доступный временный файл с одним процессом

    Моя машина не имеет имени хоста. «Не удалось запустить hostname.service: Unit hostname.service замаскирован».

    есть ли ярлык vim или я могу создать его для 'tabe other_file'

    Попросите пользователя войти в систему под учетной записью root при запуске сценария оболочки

    Bumblebee не отключает дискретную графическую карту после закрытия всех программ

    Установите частоту процессора после возобновления?

    Найти значения в файле из другого файла

    Linux и Unix - лучшая ОС в мире.