Поиск по сайту:

Из ничего ничто не возникает (Мелисс).

Linux переименовать файл, начинающийся с дефиса (тире)

2 мин для чтения
FavoriteLoadingДобавить в избранное
28 апреля 2022
Linux переименовать файл, начинающийся с дефиса (тире)
При именовании файла общепринятой и рекомендуемой практикой является не начинать и не заканчивать имя файла дефисом (тире), пробелом, подчеркиванием и точкой (точкой). Однако иногда вы можете по ошибке начать имя файла с дефиса. Хотя это нормально, но такое наименование может быть немного проблематичным, так как параметры (переключатели) почти всех команд Linux начинаются с дефиса. В этом случае, если вы передадите это имя файла, начинающееся с тире, команде Linux, оно будет рассматриваться как параметр команды (переключатель) и, скорее всего, завершится ошибкой. Наиболее распространенная проблема возникает, когда вы пытаетесь переименовать этот файл, чтобы убрать прочерк. Однако это больше не будет для вас проблемой, так как мы собираемся показать вам, как переименовать файл, начинающийся с дефиса, в ОС Linux.

Примечание
Показанный здесь метод был протестирован на Ubuntu 20.04 LTS. Однако этому можно следовать в любом другом дистрибутиве Linux.

 

Давайте сначала покажем вам, что происходит, когда вы переименовываете файл, начинающийся с дефиса. Вывод ниже показывает, что команда mv (rename) обрабатывает аргумент, не являющийся параметром (имя файла «-doc»), как параметр команды и выдает ошибку “invalid option”.

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

$ ls -- -*

 

Переименовать файл, начинающийся с тире

Есть два способа переименовать файл, который начинается с дефиса. Давайте обсудим их обоих.

 

Способ 1

Чтобы переименовать файл, начинающийся с тире, добавьте «./» к имени файла, где «.» указывает текущий каталог терминала, а «/» указывает, что имя указывает на файл в текущем каталоге. Цель «./» перед именем файла — скрыть тире от команды.

Например, чтобы переименовать файл с именем «-doc» внутри текущего каталога в «mydoc», команда будет выглядеть так:

$ sudo mv ./-doc mydoc

 

Эта команда переименует файл в «mydoc».

Если файл для переименования находится в другом каталоге, укажите путь к файлу. Например, чтобы переименовать файл «-doc», расположенный в каталоге ~/Documents, в «mydoc», команда будет выглядеть так:

$ sudo mv ~/Documents/-doc ~/Documents/mydoc

Способ 2

Читать  Написание комментариев в скриптах Bash

Другой способ переименовать файл, начинающийся с тире, — использовать двойное тире «–» перед именем файла. «-» используется в командах Linux для обозначения конца опций и отключения дальнейшей обработки опций. После «-» ничего не принимается как вариант. Это делается для прекращения обработки опциона. В противном случае команда будет рассматривать аргумент, не являющийся параметром, как параметры (флаги) и завершится ошибкой. Поэтому вам нужно будет использовать «-», когда аргумент, не являющийся опцией, начинается с дефиса.

Чтобы переименовать файл «-doc» в «mydoc», используйте «-» перед именем файла следующим образом:

$ sudo mv ---doc mydoc

 

Это переименует файл в «mydoc».

Вот и все. В этом посте мы показали вам два способа переименовать файл, начинающийся с дефиса в Linux. Чтобы узнать больше о команде mv (переместить и переименовать), посетите ее справочную страницу.

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

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Поделиться в соц. сетях:
0 0 votes
Рейтинг статьи
Subscribe
Notify of
guest
0 комментариев
Inline Feedbacks
View all comments

Читайте также

0
Would love your thoughts, please comment.x
()
x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close