У bash $0міститься назва сценарію, але в розгортанні, якщо я роблю сценарій на ім'я myscript.awk із наступним вмістом:
#!/usr/bin/awk -f
BEGIN{ print ARGV[0] }
і запустіть його, він буде друкувати лише "awk". Крім того, ARGV [i] з i> 0 використовується лише для аргументів сценарію в командному рядку. Отже, як змусити його надрукувати назву сценарію, в цьому випадку "myscript.awk"?
mawk, що Ubuntu є типовим для Ubuntu? У моєму 15.04 ВМ за замовчуванням awkє gawk. Хоча mawk встановлений, він не є типовим.
awk -f myscript.awk. Однак це не пов'язано з проблемою, про яку йдеться.
awkсценарій, оскільки він починається з #!/usr/bin/awk -f. Сценарії оболонки починаються з #!/bin/sh(або чогось подібного).
awk -f file.