mover archivos de un patrón particular a otro directorio


14

En el directorio /home/intengo archivos como este:

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

Sólo tengo que mover crust.etcMC12345.txty crust.etcMC23456.txta otro directorio, /home/out.what es el patrón que utilizo en el comando mv para el escenario anterior?


1
El patrón es un poco confuso. ¿Podría editar su pregunta para incluir algunos nombres de archivo que coincidan y algunos que no coincidan?
user000001

cuando uso pattern crust. * MC * .txt en el comando mv, mueve los 4 archivos donde solo necesito crust.etcMC12345.txt y crust.etcMC23456.txt
user86683

Entonces, ¿por qué no hacerlo mv crust.etc* dest/?
user000001

Lo intenté y funcionó. muchas gracias. pero qué pasa si no sabe cuántos literales hay antes de MC como etctMC123.txt y etctcMC125.txt
user86683

1
Intenté actualizar tu Q, ¿puedes tomar unos minutos y ayudar a todos a ayudarte? No está claro qué archivos tiene y qué archivos desea mover.
slm

Respuestas:


19

Si entiendo correctamente su pregunta, la respuesta es muy simple:

mv crust.etcMC* /home/out

o si etcno es una cadena literal, pero por ejemplo tres caracteres:

mv crust.???MC* /home/out

También tengo otros archivos con nombres como crust.tecMC12345.txt crust.etcMC1232.txt y así sucesivamente
user86683

Consulte la edición de mi respuesta y especifique con precisión qué archivos tiene.
jimmij

crust.etcMC123.txt, crust.tecMC234.txt, crust.cetMC345.txt, crust.MC123.txt son algunos archivos de muestra en mi directorio, ¿cómo hago solo archivos mv con nombres crust.tecMCxxx.txt así que crust.xxMCxxx.txt x es variable
user86683

44
Esto es incompatible con su pregunta anterior: i need files with names crust.etcMC.xyz. Y ahora lo estás diciendo do i only mv files with names crust.tecMCxxx.txt. Entonces, ¿quieres moverte solo crust.etcMC*o crust.tecMC*o ambos, o ninguno? No se apure con la respuesta, tómese su tiempo, edite la pregunta cuidando el formato adecuado y explique exactamente lo que desea.
jimmij

1

Si desea mover archivos que tienen al menos un carácter entre crust.y MCpuede usar

mv crust.?*MC /home/out

Aquí ?representa un literal y *cero o más, y por lo tanto, la combinación ?*representa uno o más caracteres. Por lo tanto, omitirá archivos como crust.MC12345.txt.


No estoy seguro de por qué el voto negativo, ya que me parece que esta es la respuesta correcta a la pregunta que se ilustra en el segundo comentario del OP después de la pregunta.
ttq
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.