z / OS Unix Системные службы: $ 0 возвращает пустое значение - PullRequest
0 голосов
/ 04 марта 2020

Я запускаю запущенную задачу (BPXBATCH, которая запускает программу Java), и в этой запущенной задаче она пытается выполнить скрипт оболочки. Этот сценарий оболочки имеет следующую строку:

PGM=$0

Можно ожидать, что это вернет текущую оболочку. В этом случае это не так. Возвращает пустое значение. Я проверил, что ID, запускающий запущенную задачу, имеет сегмент OMVS и имеет атрибут PROGRAM = / bin / sh.

У меня программа отлично работает на другом LPAR с точно такой же запущенной задачей JCL, тем же профилем RACF и той же программой. Я в тупике.

1 Ответ

0 голосов
/ 09 марта 2020

$0 возвращает имя сценария оболочки, которое является именем оболочки, если вы запускаете echo $0 из командной строки оболочки.

Если вам требуется имя программы оболочки, используйте $SHELL.

Любопытно, что $ 0 пусто. Как вы запускаете сценарий оболочки из Java? ProcessBuilder

...