переместить файлы определенного шаблона в другой каталог


14

В каталоге у /home/inменя есть такие файлы:

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

Мне нужно только переместиться crust.etcMC12345.txtи crust.etcMC23456.txtв другой /home/outкаталог. Какой шаблон я использую в команде mv для приведенного выше сценария?


1
Картина немного неясна. Не могли бы вы отредактировать свой вопрос, включив в него некоторые имена файлов, которые будут совпадать, а некоторые - нет?
user000001

когда я использую шаблон crust. * MC * .txt в команде mv, он перемещает все 4 файла, где мне нужны только crust.etcMC12345.txt и crust.etcMC23456.txt
user86683

Тогда почему бы не сделать mv crust.etc* dest/?
user000001

Я пытался, и это сработало. большое спасибо. но что если вы не знаете, сколько литералов существует до MC, например etctMC123.txt и etctcMC125.txt
user86683

1
Я пытался обновить ваш вопрос, не могли бы вы занять несколько минут и помочь всем помочь вам? Не ясно, какие файлы у вас есть, и какие файлы вы хотите переместить.
СЛМ

Ответы:


19

Если я правильно понимаю ваш вопрос, ответ очень прост:

mv crust.etcMC* /home/out

или если etcэто не буквальная строка, а, например, любые три символа, то:

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

у меня также есть другие файлы с именами, такими как crust.tecMC12345.txt crust.etcMC1232.txt и т. д.
user86683

Пожалуйста, посмотрите редактирование моего ответа и укажите, какие именно файлы у вас есть.
Джимми

crust.etcMC123.txt, crust.tecMC234.txt, crust.cetMC345.txt, crust.MC123.txt - это несколько примеров файлов в моем каталоге, как мне только mv файлы с именами crust.tecMCxxx.txt, так crust.xxMCxxx.txt x является переменным
user86683

4
Это несовместимо с Вашим вопросом выше: i need files with names crust.etcMC.xyz. А теперь ты говоришь do i only mv files with names crust.tecMCxxx.txt. Так ты хочешь двигаться только crust.etcMC*или crust.tecMC*или и то, или другое? Пожалуйста, не спешите с ответом, не торопитесь, отредактируйте вопрос, заботясь о правильном форматировании, и объясните точно, что вы хотите.
Джимми

1

Если вы хотите переместить файлы, содержащие хотя бы один символ, crust.и MCвы можете использовать

mv crust.?*MC /home/out

Здесь ?обозначает один литерал и *ноль или более, и, следовательно, комбинация ?*обозначает один или несколько символов. Поэтому он будет пропускать файлы, как crust.MC12345.txt.


Не уверен, почему понизили голос, так как мне кажется, что это правильный ответ на вопрос, который освещается во втором комментарии ОП после вопроса.
ttq
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.