У меня была точно такая же проблема. Мои разрешения были правильными в /etc/ssh
, и эта проблема возникла из-за дублирующегося IP-адреса в сети. Как только это было исправлено, проблема исчезла.
Для предоставленного вами образца ввода, где последнее поле равно 1 чатрактеру:
$ awk '$NF~/[YZ]/{print substr($0,14,33) $NF}' file
34567890123456789Y
56789012345678901Z
Для реальной строки данных, которую вы предоставили позже, где последнее поле состоит из нескольких символов и не делается никаких предположений о том, где Y или Z могут находиться в этом последнем поле:
$ awk 'match($0,/[YZ][^[:space:]]*$/){print substr($0,14,33) substr($0,RSTART,1)}' file
34567890123456789Y
56789012345678901Z
или если Y или Z всегда последний символ в строке:
$ awk '/[YZ]$/{print substr($0,14,33) substr($0,length($0))}' file
34567890123456789Y
56789012345678901Z
это почти правильно, но отсутствует Y или Z после новой записи
gawk "$NF~/Y|Z/{print substr($0,14,33)}" fileinp > fileout
Результаты:
34567890123456789
56789012345678901
Ожидаемые результаты:
34567890123456789Y
56789012345678901Z
я попробую это:
gawk "$NF~/Y|Z/{print substr($0,14,33) substr($0,194,1)}" fileinp > fileout
но я получаю эти пустые символы перед последними символами
34567890123456789 Y
56789012345678901 Z
Я также пробовал это, и это работает, но на самом деле это не последние символы:
gawk "$NF~/Y|Z/{print substr($0,14,33) substr($NF,7,1)}" fileinp > fileout
34567890123456789Y
56789012345678901Z