Как переименовать файл и а также переместить файл без renameing файл?

Если имя файла The_Intel_Microprocessors_8th_Edition.pdf (DearBits) и если я использую mv команда для переименования следующей ошибки происходит:

$ mv -f The_Intel_Microprocessors_8th_Edition.pdf (DearBits)  Intel_microprocessors

bash: syntax error near unexpected token `('

Если я пытаюсь переместить свой файл The_Intel_Microprocessors_8th_Edition.pdf (DearBits) к другому каталогу затем происходит следующая ошибка:

$ mv The_Intel_Microprocessors_8th_Edition.pdf /(DearBits/) /home/emertxe/Emertxe_books

bash: syntax error near unexpected token `('
0
задан 22 August 2017 в 08:22

2 ответа

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

одинарные кавычки Использования '' обычно, если Вам не нужен Bash для расширения переменных внутри:

mv 'The_Intel_Microprocessors_8th_Edition.pdf (DearBits)' Intel_microprocessors

или

mv 'The_Intel_Microprocessors_8th_Edition.pdf (DearBits)' /home/emertxe/Emertxe_books/

альтернатива заключению в кавычки должна выйти из всех пробелов и специальных символов путем записи единственной обратной косой черты \ перед каждым из них:

mv The_Intel_Microprocessors_8th_Edition.pdf\ \(DearBits\) Intel_microprocessors

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

3
ответ дан 2 November 2019 в 09:42

У Вас не может быть специальных символов в эти mv команда без обратных косых черт. Надлежащая команда была бы:

mv -f The_Intel_Microprocessors_8th_Edition.pdf\ \(DearBits\)  Intel_microprocessors
0
ответ дан 2 November 2019 в 09:42

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

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