У меня есть скрипт оболочки Unix, который использует некоторые файлы окружения. В файле окружения я вижу строку:
. /export/applications/ibm6000/dte/sh/nyggmfiss.env
когда я открыл файл nyggmfiss.env, я увидел переменную
${__DTEENV}
Я проверил другие файлы среды, и в одном из них есть строка
export __DTEENV=${0}
Кто-нибудь знает, что такое $(0)? Это из скрипта, который экспортирует один файл среды, или это имя файла среды, в котором есть "экспортировать другой файл среды"?
решение1
мужик баш:
$0 is set to the name of the file
решение2
${0}
это внешний скрипт оболочки, который запустил процесс оболочки, имея #!/bin/yourshell
(строку shebang) в качестве своей первой строки.
Если нет внешнего скрипта оболочки (когда вы вводите .
команду в командной строке), то ${0}
это ваша оболочка.
Концепция ${0}
не применяется к исходным «файлам среды», поэтому она остается неизменной при .
выполнении команд (исходных команд) в .