Вывод информации в консоль

Как вывести результат команды ping ya.ru в консоль, отображая только последние пять символов каждой строки?


Ответы (2 шт):

Автор решения: 69 420 1970
ping ya.ru | grep -o '.\{7\}$'

Напечатает:

61.1 ms
47.8 ms
52.9 ms
=127 ms
5.10 ms
54.8 ms
=141 ms
91.9 ms
61.1 ms
=330 ms
=167 ms
=256 ms
59.2 ms
=166 ms

А если Вам необходимо получить более корректные данные,то можно использовать команду:

ping ya.ru | cut -d "=" -f4-

которая совершенно точно напечает будь то 5, 6, или 7 символов, которые идут после третьего знака "=" в каждой строке:

58.9 ms
56.7 ms
315 ms
274 ms
235 ms

→ Ссылка
Автор решения: aleksandr barakin

последние n символов можно извлечь из строки, содержащейся в переменной, с помощью оператора:

${переменная: -n}

или:

${переменная:(-n)}

а для того, чтобы обработать поток строк, можно воспользоваться, например, оператором цикла while.


пример:

$ ping -c 1 ya.ru | while read line; do echo ${line: -5}; done
data.
.3 ms

s ---
e 0ms
00 ms

доп. чтение:

→ Ссылка