Я пишу сценарий оболочки, который должен извлекать значения из текстового файла, который выглядит следующим образом:
app.full.name /warfilelocation/ warfilename
Мой сценарий оболочки будет перебирать список имен приложений и извлекать либо местоположение, либо имя с помощью AWK. Я тестировал выполнение этого в командной строке, используя следующее: awk "\ $ 1 ~ / app.full.name / {print $ 2}" applications.txt
, который возвращает то, что я ожидал, когда я поместите это в сценарий оболочки, у меня возникнут проблемы.
У меня есть функция, которая выглядит так:
function get_location() {
local application=$1
awk "\$1 ~/^$application/ { print \$2 }" applications.txt
}
Но когда я вызываю эту функцию, я получаю следующую ошибку:
awk: $1 ~/^app.full.name
awk: ^ unterminated regexp
awk: cmd. line:1: app.full.name
awk: cmd. line:1: ^ syntax error
awk: cmd. line:2: app.full.name/ { print $2 }
awk: cmd. line:2: ^ syntax error
Есть ли у кого-нибудь идеи, что я здесь делаю неправильно. Я предполагаю, что я не избегаю правильной переменной, но независимо от того, что я пытаюсь, это не работает.
Заранее благодарим