5

Скажем, у меня есть каталог, который содержит следующее:

dir1/
dir2/
dir3/
...
dir50/
dir1.txt
dir2.txt
dir3.txt
...
dir50.txt

Я использовал mv dir * /someotherpath /, затем переместил файлы * .txt обратно. Есть ли способ перемещать только каталоги?

3 ответа3

9

Если ваша структура каталогов имеет только 1 уровень глубины, то mv dir*/ destination выполнит эту задачу.

4

Вы также можете использовать find чтобы выполнить эту задачу

find . -maxdepth 1 -type d -name "dir*"  -exec mv '{}' destination/ \;

Измените параметр maxdepth или удалите его, если ваша структура каталогов имеет больше уровней

0

С такой файловой структурой:

/dir2move2
/dir
  /subdir1
  /subdir2
  index.js

Чтобы переместить только подкаталоги, а не файлы, которые вы могли бы просто сделать:

mv ./dir/*/ ./dir2move2

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .