mover arquivos de um padrão específico para outro diretório

14

No diretório /home/ineu tenho arquivos como este:

crust.MC12345.txt 
crust.etcMC12345.txt
crust.MC23456.txt
crust.etcMC23456.txt 
crust.etctcMC23456.txt 

Eu só preciso mover crust.etcMC12345.txte crust.etcMC23456.txtpara outro diretório. /home/outQual é o padrão que eu uso no comando mv para o cenário acima?

user86683
fonte
1
O padrão é um pouco obscuro. Você pode editar sua pergunta para incluir alguns nomes de arquivos que correspondam e outros que não correspondam?
user000001
quando eu uso padrão crosta * MC * .txt em mv comandar ele está se movendo todos os 4 arquivos onde, como eu só preciso crust.etcMC12345.txt e crust.etcMC23456.txt.
user86683
Então por que não fazer mv crust.etc* dest/?
user000001
eu tentei e funcionou. Muito obrigado. mas o que se u não sei quantas literais estão ali diante da MC como etctMC123.txt e etctcMC125.txt
user86683
1
Tentei atualizar o seu Q. Você pode, por favor, tirar alguns momentos e ajudar todos a ajudá-lo? Não está claro quais arquivos você possui e quais arquivos você deseja mover.
slm

Respostas:

19

Se entendi corretamente a sua pergunta, a resposta é muito simples:

mv crust.etcMC* /home/out

ou se etcnão for uma cadeia literal, mas, por exemplo, quaisquer três caracteres:

mv crust.???MC* /home/out
jimmij
fonte
Eu também tenho outros arquivos com nomes como crust.tecMC12345.txt crust.etcMC1232.txt e assim por diante
user86683 4/14
Por favor, veja a edição da minha resposta e especifique com precisão quais arquivos você possui.
jimmij
crust.etcMC123.txt, crust.tecMC234.txt, crust.cetMC345.txt, crust.MC123.txt são alguns arquivos de amostra no meu diretório, como faço para apenas arquivos mv com nomes crust.tecMCxxx.txt, para crust.xxMCxxx.txt x é variável
user86683
4
Isso é incompatível com a sua pergunta acima: i need files with names crust.etcMC.xyz. E agora você está dizendo do i only mv files with names crust.tecMCxxx.txt. Então você quer mover apenas crust.etcMC*ou crust.tecMC*ou ambos, ou nenhum dos dois? Por favor, não se apresse com a resposta, não se apresse, edite a pergunta cuidando da formatação adequada e explique exatamente o que deseja.
jimmij
1

Se você deseja mover arquivos com pelo menos um caractere crust.e MCpode usar

mv crust.?*MC /home/out

Aqui ?significa um literal e *zero ou mais, e, portanto, a combinação ?*representa um ou mais caracteres. Portanto, pulará arquivos como crust.MC12345.txt.

ttq
fonte
Não sei por que o voto negativo, pois me parece que esta é a resposta correta para a pergunta que é esclarecida no segundo comentário do OP após a pergunta.
ttq