У меня возникла проблема с резервным копированием на сервере linux, который каким-то образом переместил все папки файлов на один уровень в новую папку с тем же именем. Я хотел бы вернуть все файлы в исходное местоположение. Многие из файлов имеют пробелы в своих именах, чтобы усложнить ситуацию.Переместить все файлы на один уровень на один уровень
Оригинальная структура каталогов:
backup/folder 1/file 1
backup/folder 1/file 2
backup/folder 1/subfolder/file A
backup/folder 2/file 1
...
Неправильная структура каталогов:
backup/folder 1/folder 1/file 1
backup/folder 1/folder 1/file 2
backup/folder 1/folder 1/subfolder/file A
backup/folder 2/folder 2/file 1
...
Обратите внимание, что я не хочу, чтобы файл в подпапке, чтобы перейти в папку 1, но я хочу сам вложенную чтобы подняться на один уровень.
Я пробовал несколько команд, подобных этому, основываясь на несколько связанных потоках здесь, но не получил его на работу, вместо этого пытается переместить файлы в текущий каталог. Что я делаю не так?
найти. -mindepth 3 -maxdepth 3 -exec sh -c 'mv -v {} ..' \;
Первые две результирующие линии исправны? Строка № 1 имеет только один дубликат, но строка №2 имеет два. – hidefromkgb
извините, да, когда я отредактировал свой пост, я испортил это, теперь это правильно. Все файлы и подпапки перемещены на один уровень вниз. – rabidfurball