Возможно ли хранить скрипт awk внутри переменной оболочки;например:
export script="'{printf(\$2); printf("\"\\n\"");}'"
echo $script
'{printf($2); printf("\n");}'
Сценарий работает правильно, когда я вызываю его напрямую следующим образом:
awk '{printf($2); printf("\n");}' testFile.txt
prints proper output
Когда я пытаюсь передать сценарий как переменную оболочки, я сталкиваюсь с проблемами.
awk $script testFile.txt
awk: syntax error at source line 1
context is
>>> ' <<<
missing }
awk: bailing out at source line 1
Я получаю немного другую ошибку, когда заключаю переменную в двойные кавычки
awk "$script" testFile.txt
awk: syntax error at source line 1
context is
>>> ' <<<
awk: bailing out at source line 1
Я все еще изучаю, как именно работают расширения оболочки, я был бы признателен за любые предложения о том, чтоЯ скучаю здесь.