Как извлечь последнюю часть строки в bash?

У меня есть переменная:

A="Some variable has value abc.123"

Мне нужно извлечь это значение i.e abc.123. Возможно ли это в bash?

Ответы

Ответ 1

Откуда вы знаете, где начинается значение? Если это всегда 5-й и 6-й слова, вы можете использовать, например:

B=$(echo $A | cut -d ' ' -f 5-)

Это использует команду cut, чтобы отрезать часть строки, используя простое пространство в качестве разделителя слов.

Ответ 2

Самый простой -

echo $A | awk '{print $NF}'

Ответ 4

Некоторые примеры с использованием расширения параметров

A="Some variable has value abc.123"
echo "${A##* }"

abc.123

Самое длинное совпадение на "" пространстве

echo "${A% *}"

Some variable has value

Самое длинное совпадение. точка

echo "${A%.*}"

Some variable has value abc

Кратчайшее совпадение на "" пространстве

echo "${A%% *}"

some

Подробнее Shell-Parameter-Expansion