@nathan111777

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

У меня в папке Videos есть много видео по тематике фильтры.
Я чтобы немного навести порядок создал папку filters в папке Videos куда хочу переместить все видео по данной тематике.

Так я не могу написать:
mv /home/user/Videos/* /home/user/Videos/filters

Потому что будет тогда копироваться папка filters которая есть в Videos в саму себя.
  • Вопрос задан
  • 1960 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Ну если тебе нужно перенести только файлы, но не трогать другие каталоги, то тогда можно попробовать
mv /home/user/Videos/*.* /home/user/Videos/filters
Так как у файлов обычно есть расширения.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Всё проще! Не надо создавать проблем где их нет.
Указанной командой всё перенесётся как надо, mv только ругнётся:
mv: невозможно перенести 'videos' в свой собственный подкаталог, 'videos/videos'

Остальное будет перенесено в указанный каталог videos.
Ну, в Вашем варианте, filters. Только что создал для пробы, проверил.

Для теста сделайте отдельный каталог и в нём аналогично файлов-каталогов накидать можно. Ну и в нём же проверить. Мало ли, как у Вас в убунте настроено чего...
Ответ написан
Комментировать
xotkot
@xotkot
хорошо есть и хорошо весьма
$ cd $HOME/Videos
$ mv !(filters) filters

если не сработает значит нужно включить расширение регулярных выражений
$ shopt -s extglob
включено или нет можно глянуть командой
$ shopt
...
extglob        	on
...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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