% dd conv=ascii << "EOT" | hexdump -C #!/usr/local/bin/bash echo My script has the letter M in it. EOT 0+1 records in 0+1 records out 61 bytes transferred in 0.000029 secs (2097152 bytes/sec) 00000000 83 81 07 bf bd bc 07 25 3f b3 2f 25 07 b2 b9 3e |.......%?./%...>| 00000010 07 b2 2f bd b8 8e b5 b3 b8 3f 80 28 60 80 bd b3 |../......?.(`...| 00000020 bc b9 ba be 80 b8 2f bd 80 be b8 b5 80 25 b5 be |....../......%..| 00000030 be b5 bc 80 28 80 b9 3e 80 b9 be 06 8e |....(..>.....| 0000003d %Ваш файл, содержащий скрипт, закодированный в (скорее всего )UTF -8 или Latin -1, выглядит как тарабарщина в системе, где текст закодирован в EBCDIC. Вам нужно повторно -закодировать его в EBCDIC.
Различные функции z/OS будут выполнять (ограниченную форму )этого преобразования автоматически для вас, если вы дадите им соответствующее указание, включая управляемую передачу файлов. Вы сами передаете текстовый файл, встроенный в ustar-архив, поэтому вам придется самостоятельно -перекодировать кодировку, почти наверняка не только этот файл.
Дополнительная литература
_BPXK
переменные окружения ". Системные службы z/OS UNIX . GA32 -0884 -00. IBM. 2014.