есть ли лучший способ перемещения папок вверх по каталогу, чем mv?

есть ли лучший способ перемещения папок вверх по каталогу, чем mv?

Я скачал довольно большую файловую структуру (>100 ГБ) в подпапку моего корневого каталога, назовем ее /folder. Проблема в том, что я случайно скопировал ее в подпапку этой папки, а не просто прямо в эту папку, так что теперь у меня /folder/folder/*вместо /folder/*того, что мне нужно. Есть ли лучший способ удалить лишний уровень, чем просто:

# mv /folder/folder/* /folder
# rmdir /folder/folder

решение1

Если источник и назначение находятся в одной файловой системе, mv просто создаст еще одну запись в каталоге, он не будет копировать 100 ГБ данных. Так что это лучший способ сделать это, вам не нужно искать другой способ. Но если они находятся в разных файловых системах, данные будут скопированы. Кроме того, вам не нужно использовать rmdir - mv сделает это автоматически.

решение2

Команда mvне перемещает данные в файлах, а только имена файлов. Если вы беспокоитесь о перемещении всех данных в каждом файле, то это не поможет.

решение3

Вы можете использовать:

# cd /folder/folder
# mv * ../
# rmdir /folder/folder

но в чем проблема с тем, что у вас было? Можете ли вы пояснить, что вы подразумеваете под лучшим способом?

решение4

Немного более простая процедура (меньше операций МВ)

  mv /folder /surplusfolder
  mv /surplusfolder/folder /folder
  rmdir /surplusfolder

Связанный контент