Как использовать встроенную переменную в скрипте оболочки - PullRequest
0 голосов
/ 01 января 2019

Мне нужно использовать awk build в переменной $NF со сценарием оболочки.Входная строка будет выглядеть примерно так

Chapl 222222/0: Pran=28e2 Load=0.000 kkk Statevfe=Nowf Alarmkj fIMmg=1 LkouIM="087" Po89rt="eth566" NE40Ef-02-T1M1N2-HUW_S1_RD

Я хочу извлечь один последний элемент из этой строки

NE40Ef-02-T1M1N2-HUW_S1_RD

На сервере, если я сделаю что-то подобное

cat aa |awk '{print $NF}'

Я получаю правильный результат.Но когда я пытаюсь сделать ssh, а затем пытаюсь выполнить то же самое, он не понимает, что такое $NF.

Я пытаюсь сделать что-то вроде этого

cat aa |awk -v temp ="$NF" '{print $NF}'

Но это делаетне работает.

Ответы [ 2 ]

0 голосов
/ 02 января 2019

версия оболочки (ksh, bash)

temp='Chapl 222222/0: Pran=28e2 Load=0.000 kkk Statevfe=Nowf Alarmkj fIMmg=1 LkouIM="087" Po89rt="eth566" NE40Ef-02-T1M1N2-HUW_S1_RD'
temp="${temp##* }"


 # or in ssh script using output
 temp="$( cat aa )"
 echo "${temp##* }"
0 голосов
/ 01 января 2019

Что-то в этом роде?

temp=$(awk '{print $NF}' aa)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...