Ваша вторая команда будет работать, но вы не указали имя файла. Если вы хотите переместить все файлы, соответствующие шаблону 1995_.info
и/или1995_.dat
find./ -type f -name 1995*.info -exec mv {} /1995/info \;
find./ -type f -name 1995*.dat -exec mv {} /1995/dat \;
Если вы хотите сделать все годы одной командой:
for y in {1995..1999}; do $(find Years -type f -name $y*.info -exec mv {} '/'$y'/info' \;); done
for y in {1995..1999}; do $(find Years -type f -name $y*.dat -exec mv {} '/'$y'/dat' \;); done
Это будет циклически перебирать каталоги с каждым годом, находить имена файлов и перемещать их в соответствующие им годовые каталоги.
Примечание :Я протестировал и подтвердил это в CentOS 7.4, но в зависимости от среды вам может потребоваться экранировать *
, чтобы вы могли добавить перед ним обратную косую черту:\*
man pacman.conf
объясняет, что это переменные, поэтому вы можете использовать один и тот же URL-адрес для разных репозиториев и разных архитектур. Используйте /\$repo
в мануале (, т.е. пейджер :меньше ), чтобы найти место.