как сократить номера версий с плавающей запятой + linux

как получить только две первые цифры из следующей команды

моя цель - получить ожидаемые результаты базовой версии hadoop

hdp-select | grep hadoop-client | awk '{print $NF}'
2.6.0.3-8

:

2.6
-1
16.08.2017, 00:12
3 ответа

Вы можете использовать coreutils cut:

echo 2.6.0.3-8 | cut -d . -f 1,2

Вывод:

2.6
1
28.01.2020, 05:07

С одинарнымawk:

hdp-select | awk '/hadoop-client/{ printf("%.1f\n",$NF); exit }'
2.6

  • /hadoop-client/-учитывается только строка с ключевым словом hadoop-client

  • printf("%.1f\n",$NF)-форматирование номера версии как простого числа с плавающей запятой

  • exit-немедленно остановить обработку (экономия ресурсов)

1
28.01.2020, 05:07

вырезать десятичные точки с помощью printf вawk

awk '{printf "%.1f\n", $NF}'
2
28.01.2020, 05:07

Теги

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