Как извлечь только версию из команды "go version", используя sed или другую команду bash в bash сценарии оболочки, запущенном в Debian 10 - PullRequest
0 голосов
/ 20 января 2020

Команда go version в данный момент печатает go version go1.13.6 linux/amd64. Я установил с веб-сайта go, а не пакетов Debian, так как версия старая. Поэтому традиционные способы извлечения номера версии, такие как dpkg -s, не могут быть использованы.

Я исследовал sed команды, чтобы извлечь только число (1.13.6) , как этот другой вопрос на этом сайте я похож, я предоставляю вам, однако после прочтения различных источников в Интернете о том, что возможно с помощью sed и моих ограниченных знаний, я не смог понять, как сказать sed, чтобы найти отправную точку, но в одиночку сделать это будущим доказательство для новых версий, которые могут быть небольшие изменения этого числового формата. Я пытался найти способ сказать «найди 3-е число до последнего», чтобы потом я мог работать задом наперед. Или «найдите второе слово« go »».

В настоящее время усилия носят чисто теоретический характер, поскольку я не могу найти, с чего начать, я не включал никаких попыток.

Можно ли это сделать?

1 Ответ

1 голос
/ 20 января 2020
$ v=`go version | { read _ _ v _; echo ${v#go}; }`
$ echo $v
1.13.6

Дополнительная информация:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...