Я пишу сценарий оболочки, который должен извлекать значения из текстового файла, который выглядит так:
app.full.name /warfilelocation/ warfilename
Мой сценарий оболочки будет перебирать список имен приложений и извлекать местоположение или имя с помощью AWK. Я проверил это в командной строке, используя следующее: awk "\$1 ~/app.full.name/ { print $2 }" application.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
У кого-нибудь есть идеи, что я делаю неправильно здесь. Я предполагаю, что я неправильно экранирую переменную, но независимо от того, что я пытаюсь, это не работает.
заранее спасибо