Чтобы переместить обычные файлы с префиксом part
, содержащие суффикс, вы можете сделать:
shop -s nullglob
for file in part*.*; do
[ -f "$file" ] || continue
dir=${file%.*}
mkdir -p "$dir" && mv -i "$file" "$dir"
done
Это позволяет опциям оболочки Bash nullglob
расширять несоответствующие шаблоны до нуля строка и
test [ -f "$file" ] || continue
пропускает нестандартные файлы. Шаблон ${file%.*}
удаляет суффикс из имени файла.
Опция -p
игнорирует уже существующий каталог и -i
запрашивает, должен ли файл уже существовать в каталоге.