Вы можете использовать GNU grep
:
grep -oP 'FREEBYTES.*percent="\K[0-9.]+' file
или sed
:
sed -n '/FREEBYTES/{s/.*percent="\([0-9.]*\).*/\1/p}' file
или GNU sed
:
sed -rn '/FREEBYTES/{s/.*percent="([0-9.]+).*/\1/p}' file64
Или awk
:
awk '/FREEBYTES/{sub(/.*percent="/,""); sub(/".*/,""); print}' file
Или perl
:
perl -ne 'print if s/.*FREEBYTES.*percent="([0-9.]+).*/\1/' file
Обратите внимание, что все они будут работать с произвольным вводом различной длины до тех пор, пока строки Присутствуют FREEBYTES
и percent = "
, за которыми следует по крайней мере одно число, а затем "
.