Нужно получить подстроку из строки в bash - PullRequest
0 голосов
/ 09 февраля 2019

Я пытаюсь получить версию Atom в bash.Тид регулярное выражение работает, но мне нужна подстрока из строки, которая дает grep.Как я могу получить версию из этой строки?

<span class="version">1.34.0</span>

curl https://atom.io/ | grep 'class="version"' | grep '[0-9]\+.[0-9]\+.[0-9]\+'

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

с awk

$ curl ... | awk -F'[<>]' '/class="version"/{print $3; exit}'
0 голосов
/ 09 февраля 2019

Вы можете достичь этого, используя команду cut и добавив соответствующие разделители;в вашем случае это будут теги > и <, инкапсулирующие версию.

Вход :

curl -s https://atom.io/ \
| grep 'class="version"' \
| grep '[0-9]\+.[0-9]\+.[0-9]\+' \
| cut -d '>' -f2 \
| cut -d '<' -f1

Выход :

1.34.0

* добавлен флаг curl -s, чтобы сделать вывод тихим, личный выбор

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