grep
com PCRE ( -P
), extraindo somente a parte correspondente ( -o
):
grep -Po '"\KTron[^"]*\.exe' file
No padrão Regex:
-
"
corresponde a um literal"
,\K
descarta a correspondência -
Tron
corresponde ao literalTron
-
[^"]*
corresponde a zero ou mais caracteres que não são"
-
\.exe
corresponde ao literal.exe
Exemplo:
$ cat file.txt
<li><a href="Tron%20v9.6.1%20(2016-10-03).exe"> Tron v9.6.1 (2016-10-03).exe</a></li>
<li><a href="Tron%20v9.6.1%20(2016-10-03).torrent"> Tron v9.6.1 (2016-10-03).torrent</a></li>
<li><a href="md5sums.txt"> md5sums.txt</a></li>
<li><a href="md5sums.txt.asc"> md5sums.txt.asc</a></li>
<li><a href="sha256sums.txt"> sha256sums.txt</a></li>
<li><a href="sha256sums.txt.asc"> sha256sums.txt.asc</a></li>
$ grep -Po '"\KTron[^"]*\.exe' file.txt
Tron%20v9.6.1%20(2016-10-03).exe