Поиск по сайту:
Чего не понимают, тем не владеют (И. Гёте).

Как переместить файлы с помощью команды Linux: mv

01.10.2016
Как переместить файлы с помощью команды Linux: mv

Введение

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

Команду mv не следует путать с командой cp которая копирует файл из одного места в другое. Команда mv физически изменяет местоположение файла или переименовывает его. Это не означает, что файл больше не существует в своем первоначальном месте.

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

Представьте, что вы скопировали большое количество фотографий с вашей цифровой камеры в папку Pictures в вашей домашней папке. (~ / Pictures).

Нажмите здесь для гида о тильде (~).

Имея много снимков в одной папке делает их трудно читаемыми. Было бы лучше, если бы классифицировать изображения в некотором роде.

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

Для этого примера предположим, что в папке изображения, которые имеют следующие файлы:

img0001_01022315.jpg
img0002_02034515.jpg
img0003_05022315.jpg
img0004_13022015.jpg
img0005_14042116.jpg
img0006_17071216.jpg
img0007_19092316.jpg
img0008_01015616.jpg
img0009_02013216.jpg
img0010_03016716.jpg

 

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

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

Читать  Как удалить непустой каталог в Linux

Для создания папки используйте команду MKDIR следующим образом :

MkDir <имя_папки>

 

В примере, приведенном выше, было бы хорошей идеей, чтобы создать папку для каждого года и в каждой папке года должны быть папки для каждого месяца.

Например:

MkDir 2015

MkDir 2015 / 08_August

MkDir 2015 / 09_September

MkDir 2015 / 10_October

MkDir 2015 / 11_November

MkDir 2015 / 12_December

MkDir 2016

MkDir 2016 / 01_January

MkDir 2016 / 02_February

 

Теперь вы можете быть удивлены, почему я создал каждый месяц папку с номером и именем (т.е. 01_January).

При запуске листинга каталога с помощью в команду Ls папки возвращаются в алфавитном порядке. Без чисел апрель будет первым, а затем август и т.д. С помощью числа в имени папки, он гарантирует месяц возвращать в правильном порядке.

С помощью создаются папки теперь вы можете начать перемещать файлы изображений в соответствующие папки следующим образом:

mv img0001_01012015.jpg 2015/01_January/.

mv img0002_02012015.jpg 2015/01_January/.

mv img0003_05022015.jpg 2015/02_February/.

mv img0004_13022015.jpg 2015/02_February/.

mv img0005_14042015.jpg 2015/04_April/.

mv img0006_17072015.jpg 2015/07_July/.

mv img0007_19092015.jpg 2015/09_September/.

mv img0008_01012016.jpg 2016/01_January/.

mv img0009_02012016.jpg 2016/01_January/.

mv img0010_03012016.jpg 2016/01_January/.

 

В каждой из строк кода выше изображения копируется в соответствующую папку: год и месяц на основе даты в имени файла.

Период (.) В конце строки означает то, что известно как метасимвол. Это в основном гарантирует , что файл сохраняет такое же имя.

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

mv img0008_01015616.jpg oldyearfireworks.jpg

 

Читать  Команда Chroot в Linux с примерами

Что произойдет, если файл уже существует

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

Есть способы защитить себя. Вы можете сделать резервную копию файла назначения, используя следующий синтаксис.

mv -b test1.txt test2.txt

 

Это переименовывает test1.txt в test2.txt. Если есть уже test2.txt тогда станет test2.txt ~.

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

mv -i test1.txt test2.txt

 

Если вы переносите сотни файлов, то вы, вероятно, напишите сценарий для выполнения перемещения. В этом случае вы не будете видеть сообщение с  вопросом, хотите ли вы переместить файл или нет.

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

mv -n test1.txt test2.txt

 

Наконец, есть еще один переключатель, который позволяет обновлять файл назначения, если исходный файл более новый.

mv -u test1.txt test2.txt

 

Как переместить файлы с помощью команды Linux: mv

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 3,67 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Если вы хотите включить случайный комментарий в один из ваших постах…

Спасибо!

Теперь редакторы в курсе.