- Adicione a opção
-r
ased
(para conseguir usar expressões regulares estendidas; normalmente não entende+
). - Coloque seu script
sed
entre aspas (preferencialmente aspas simples). -
Altere
$1
e$2
no seu script parae
:
sed -re 's/(._A[0-9]+)(_B[0-9].)/_FOO/'
Além disso,
- Para maior clareza, talvez você queira alterar
'…'
para$(…)
- veja este , este , e isto - ou seja, manipule oecho | sed
da mesma maneira que você manipula ols
. - É melhor dizer
for f in *
(em vez defor f in $(ls)
). - Você deve citar referências de variáveis do shell (por exemplo,
echo "$f"
) a menos que você tenha uma boa razão para não e você tem certeza que sabe o que está fazendo.