Как переместить все файлы из одной папки в другую с помощью командной строки?

Я хотел бы знать, как я могу переместить все файлы из папки в другую папку с помощью командной строки.

Допустим, я нахожусь в моей папке «Загрузки», и есть 100 файлов, которые я хотел бы переместить в папку «Видео» без необходимости записывать все имена файлов.

369
задан 6 August 2012 в 19:24

9 ответов

mv ~/Downloads/* ~/Videos

Он переместит все файлы, включая подпапки, в каталог, который вы хотите mv. Если вы хотите cp (копировать) или rm (удалить), вам понадобится опция -r (рекурсивная), чтобы включить подпапки.

0
ответ дан 6 August 2012 в 19:24

Перемещать каталог с или без содержания к его новому имени точно так же, как, как Вы использовали бы mv команда для переименования файла:

mv -T dir1 dir2

где:

  • -T рассматривает место назначения как нормальный файл
  • dir1 настоящее имя каталога
  • dir2 новое название каталога

NB: dir2 не должен существовать.

Я надеюсь, что это сохраняет кого-то много времени, как новичок, перед этим, я создал бы каталог с новым именем и затем переместил бы содержание каталога к каталогу, созданному ранее.

Используйте для подкаталогов

Эта команда полезна, когда много файлов были сохранены в подпапке целевого каталога т.е. Downloads/mp4. В этом примере, работая mv -T Downloads/mp4 Videos приведет к mp4 удаляемая подпапка и все файлы, содержавшие внутри, перемещена в папку Videos.

3
ответ дан 6 August 2012 в 19:24

Используйте

mv -v ~/rootfolder/branch/* ~/rootfolder

Надеюсь, это поможет. Потому что у меня была такая же боль и я потратил много времени на исправление своей ошибки.

0
ответ дан 6 August 2012 в 19:24

Это возможно с помощью rsync, например:

rsync -vau --remove-source-files src/ dst/

где:

-v, --verbose: увеличить многословие.

-a, --archive: режим архивирования; равно -rlptgoD (нет -H, -A, -X).

-u, --update: Пропускать файлы, более новые на приемнике.

--remove-source-files Это говорит rsync об удалении со стороны отправки файлов (то есть не-каталогов), которые являются частью передачи и были успешно продублированы на принимающей стороне.

Если у вас есть привилегии root, добавьте префикс sudo для устранения потенциальных проблем с разрешениями.

0
ответ дан 6 August 2012 в 19:24

Для простого случая:

mv ~/Downloads/* ~/Videos

Если вы также хотите переместить точечные (скрытые) файлы, установите параметр оболочки dotglob .

shopt -s dotglob
mv ~/Downloads/* ~/Videos

Это оставляет опцию оболочки установленной.

Для однократного использования dotglob выполните команды в подоболочке:

(shopt -s dotglob; mv ~/Downloads/* ~/Videos)
0
ответ дан 6 August 2012 в 19:24
  1. Перейдите в командную строку и перейдите в каталог, в который вы хотите переместить его, с типом cd folderNamehere
  2. pwd. Это напечатает каталог, который вы хотите переместить тоже.
  3. Затем перейдите в каталог, где находятся все файлы, с cd folderNamehere
  4. Теперь, чтобы переместить все файлы, тип mv *.* typeAnswerFromStep2here

, который переместит все файлы из этого справочник к другому.

0
ответ дан 6 August 2012 в 19:24

попробуйте

find ~/Desktop -type f -iname  "*.mp4" -exec mv {} ~/Videos \;

-типа с аргументом -типа. Вы можете указать тип файла .

-iname: наиболее распространенный и очевидный способ поиска файла - это использование аргумента -name. Если вы не уверены в его чувствительности к регистру, вы можете использовать аргумент -iname

mv {} и, наконец, указать целевой каталог, а затем переместить туда файлы, используя аргумент mv {}

0
ответ дан 6 August 2012 в 19:24
mv source_path/* destination_path/

здесь вы должны поставить косую черту и * после исходного пути, чтобы он брал файлы внутри source_path вместо полного исходного каталога.

Пример: mv /home/username/test/* /home/username/test2/

Приведенная выше команда перемещает все файлы (если они не скрыты) в исходном каталоге в каталог назначения.

0
ответ дан 6 August 2012 в 19:24

Откройте терминал и выполните эту команду:

mv  -v ~/Downloads/* ~/Videos/

Он переместит все файлы и папки из папки «Загрузки» в папку «Видео».


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

Если вы хотите переместить все файлы (но не папки) из папки «Загрузки» в папку «Видео», используйте эту команду

find ~/Downloads/ -type f -print0 | xargs -0 mv -t ~/Videos

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

Если вы хотите переместить все файлы из папки загрузок, но не любые файлы в папках в папке Download, используйте эту команду:

find ~/Downloads/ -maxdepth 1 -type f -print0 | xargs -0 mv -t ~/Videos

здесь, опция -maxdepth указывает, как глубоко поиск должен пытаться, 1 означает, только каталог, указанный в команде find. Вы можете попробовать использовать 2, 3 также для проверки.

См. Ubuntu , найдите man-страницу для подробного объяснения

.
0
ответ дан 6 August 2012 в 19:24

Другие вопросы по тегам:

Похожие вопросы: