Команда Grep возвращает ошибку grep: RE 41: не запомнилась строка поиска [закрыто]

Я пытаюсь найти значение внутри переменной, как показано ниже

serverindex="Server Index :     "
indexstring="$serverindex${INDEX}"
X=sed -n '/search string/,/string2 /p' ${download_path}/${filename}*.out | grep -w "${indexstring}" | cut -d":" -f3 | awk '{print $1}'

, но получаю grep: RE error 41: Нет запомненной строки поиска. в ответ.

При экранировании " с использованием \" перед $ {indexstring} строка поиска теряется, поскольку в строке есть пробелы. {{1} } Я использую это на обычном Unix-компьютере, а не на Ubuntu

Есть предложения?

-1
задан 26 July 2020 в 20:55

1 ответ

Вы должны написать

X=$(sed ...)

. Оператор, записанный в $ (), вычисляется в вложенной оболочке, и его вывод сохраняется в переменной, в данном случае X.

0
ответ дан 30 July 2020 в 22:02

Другие вопросы по тегам:

Похожие вопросы: