как получить содержимое из "value =" "" - PullRequest
0 голосов
/ 20 октября 2018

Это код:

#!/bin/bash
head=`curl -D -s "http://example.com/" | grep "j_id__v_0:javax.faces.ViewState:2"`
echo $head

и вывод на клемме:

            </script>
            <input type="hidden" name="GlobalFooter_SUBMIT" value="1" />
            <input type="hidden" name="javax.faces.ViewState" id="j_id__v_0:javax.faces.ViewState:2" value="V7wZDq4cDizFPZ0i52hQGUD25XgWp5NJC+hCql33eTTwC2hm" autocomplete="off" />
        </form>
    </div>
</div> 

Как распечатать содержимое значения?

1 Ответ

0 голосов
/ 21 октября 2018

Добавьте sed после grep, чтобы сохранить только значение:

#!/bin/bash

head=$(curl -D -s "http://example.com/" | grep "j_id__v_0:javax.faces.ViewState:2" | sed 's/.*\svalue="\(\S*\)"\s.*/\1/')
echo $head

Пара точек:

  • используйте синтаксис $() для назначения результатов командк переменной.Синтаксис обратного удара, хотя и работает, является устаревшим синтаксисом.
  • \s: пробел
  • \S: все, что не является пробелом.Я использовал это, поскольку .* является жадным и включал бы все после value="SOMETHING" autocomplete="off
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...