@huk6639

Как написать bash-скрипт, который перемещал бы только определенные файлы?

Есть большое количество файлов, название которых выглядит следующим образом 01ххх.ввв 02ххх.ввв ... 999ххх.ввв. С некоторыми из файлов нужно провести определенные действия. Есть массив чисел, соответствующих номерам необходимых файлов. Можно ли написать баш-скрипт, который брал бы только необходимые файлы (в названиях которых есть числа из массива) и перемещал бы их в папку?
К башу привязался только из-за того, что хотелось бы научиться в нем писать.
  • Вопрос задан
  • 620 просмотров
Пригласить эксперта
Ответы на вопрос 3
muhammad_97
@muhammad_97
PHP-разработчик
ls <from>| grep <regexp>| xargs mv <to>

Составляете регулярку здесь и подставляете вместо <regex>.
Ответ написан
pavlinux
@pavlinux
find -regex pattern -exec mv {} /dir \;

как та так
Ответ написан
shambler81
@shambler81 Куратор тега Linux
А еще лучше через xargs - он в разы быстрее и с сохранением стурктуры каталогов
find . -regex ".*\.\(jpg\|jpeg\|gif\|png\|JPG\|JPEG\|GIF\|PNG\)" -print0 | xargs -0 cp --parents --target-directory 
./tmp/backup
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы