Sugiro que grep
seja uma ferramenta melhor para sed
quando o que você deseja fazer é ler uma linha de um arquivo com base em uma correspondência. Você está convidado a substituir o seu sed
na estrutura de loop abaixo. Note que eu também usei a opção -m 1
para que o grep só se preocupe em procurar o primeiro jogo:
for file in *.html; do
text="$(grep -m 1 "thetext" "$file")"
rename "s?$text?" "$file"
done