Еще раз, найти может прийти на помощь. Вы можете найти выборочно размолвка файлы в подпапках первого уровня, затем используйте -execdir Команда, которая перемещает найденный файл в папку TIFF в текущем каталоге.
Вы можете вызвать небольшой скрипт, который проверяет наличие папки TIFF или создает ее перед перемещением всех файлов TIFF, но в этот единственный раз, вероятно, проще работать в два этапа: 1) создать папку TIFF в любом из нужных вам папок и 2) переместите туда файлы TIFF
найти . -maxdepth 1 -type d -path '*/*' -exec mkdir {}/TIFF \;
найдет папки «1», «2» и т. д., если ваш текущий каталог содержит эти папки, и создаст каталог TIFF в каждом из них. Появится сообщение об ошибке, если папка TIFF уже существует.
Затем вторая команда может переместить все размолвка файлы во вновь созданные папки:
найти . -type f -ipath '*/*/*.tif' -execdir mv {} TIFF \;
Здесь мы ищем только файлы (-тип ф) в папках "1", "2" и т.д., но не ниже из-за шаблона файла (-ипат). -ипат в отличие от -дорожка указывает, что совпадение нечувствительно к регистру. -execdir action выполняет последующую команду, однако текущая папка является папкой найденного файла. {} обозначает найденный файл. Из-за -execdir, это только базовое имя файла. Файл будет перемещен в папку TIFF в текущей папке.
Пробелы в имени файла будут корректно обрабатываться {} токен.Кавычки вставлять не надо, хотя можно было бы.