Рекурсивная комната с условием в Linux

У меня есть следующая структура папок:

parent
 - folder1
   - main1.x
   - main1.y
   - main1.z
   - main1-626262.x
   - main1-626263.x
   - main1-626264.x
   - main1-626265.x
   - main1-626266.x
   - main1-626267.x
 - folder2
   - main2.x
   - main2.y
   - main2.z
   - main2-726262.x
   - main2-726263.x
   - main2-726264.x
   - main2-726265.x
   - main2-726266.x
   - main2-726267.x

Теперь, я хочу удалить: main-*********.x

Так, моя необходимая структура папок:

parent
 - folder1
   - main1.x
   - main1.y
   - main1.z
 - folder2
   - main2.x
   - main2.y
   - main2.z

Так, как я могу достигнуть этого?

2
задан 13.03.2011, 07:54

2 ответа

Попробуйте это:

find * -name 'main?-*.x' | xargs echo rm -rf

Вышеупомянутая печать команда, которая удаляет нежелательные каталоги (на самом деле не удаляя их). Если это смотрит хорошо, просто выполните печатную команду, или выполненный

find * -name 'main?-*.x' | xargs rm -rf
6
ответ дан 08.12.2019, 04:51
rm */*[0-9][0-9][0-9][0-9][0-9][0-9].*

Но нуждается в ударе или sh для оценки. Не знайте об Оболочке C, если она не будет работать, то некоторый подобный синтаксис будет доступен.

1
ответ дан 08.12.2019, 04:51

Теги

Похожие вопросы