Você pode fazer isso com uma pequena modificação das respostas da última pergunta:
rename s/ras\.// sw.ras.*
ou
for file in sw.ras.*; do
mv "$file" "${file/ras./}"
done
Explicação:
rename
é um script perl
que usa uma expressão regular perl
e uma lista de arquivos, aplica o regex ao nome de cada arquivo e renomeia cada arquivo para o resultado da aplicação da expressão regular. No nosso caso, ras
é correspondido literalmente e \.
corresponde a um literal .
(como .
sozinho indica qualquer caractere que não seja uma nova linha) e substitui isso por nada.
O loop for
pega todos os arquivos que começam com sw.ras.
(padrão shell glob) e faz um loop sobre eles. ${var/search/replace}
pesquisa $var
para search
e substitui a primeira ocorrência por replace
, por isso ${file/ras./}
retorna $file
com o primeiro ras.
removido. O comando renomeia o arquivo para o mesmo nome menos ras.
. Observe que com essa pesquisa e substituição, .
é considerado literalmente, não como um caractere especial.