Быстрые советы по Linux: именование файлов

Если вы пришли из мира Windows, вы в значительной степени привыкли давать файлам какие-либо имена. У вас может быть файл с именем «Это мой файл, и этот файл называется Meh.doc». В мире Windows у вас не было бы никаких проблем с этим файлом. В мире Linux вы можете столкнуться с некоторыми проблемами.

Конечно, вы можете открыть Nautilus, Dolphin, Thunar или любой другой файловый менеджер, дважды щелкнуть этот файл .doc и начать работать с ним в любом текстовом редакторе. Но что, если вам нужно (или нужно) переместить этот файл через командную строку? Что бы вы сделали?

Если вы пытались выполнить команду:

mv ~ / Documents / Это мой файл, и он называется Meh.doc ~ /

вы бы увидели:

mv: cannot stat `This ‘: нет такого файла или каталога
mv: не может stat `Is ‘: нет такого файла или каталога
mv: не может stat `My ‘: нет такого файла или каталога
mv: не может stat `File ‘: нет такого файла или каталога
mv: не может stat `And ‘: нет такого файла или каталога
mv: cannot stat `This ‘: нет такого файла или каталога
mv: не может stat `File ‘: нет такого файла или каталога
mv: не может stat `Is ‘: нет такого файла или каталога
mv: не может stat `Called ‘: нет такого файла или каталога
mv: не может статистика `Meh.doc ‘: нет такого файла или каталога

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

mv ~ / Documents / Это

и вы нажмете клавишу Tab, bash завершит имя файла, только это будет выглядеть так:

Это \ Is \ My \ File \ And \ This \ File \ Is \ Called \ Meh.doc

на этом этапе вы можете закончить ввод команды с успешными результатами.

Чтобы избежать всего этого, не используйте пробелы в именах файлов при использовании Linux. Если вам нужно разделить слова, используйте «-» или «_» для разделения слов следующим образом:

This_Is_My_File_And_This_File_Is_Called_Meh.doc

Конечно, указанное выше имя файла довольно громоздко. Но вы поняли.

В операционной системе Linux в именах файлов не должно быть пробелов.