Найти в Дзене
The Geek Wolf

Система Linux // простые команды для работы с файлами

Дистрибутивы сегодня соревнуются в красоте и комфорте рабочих столов. Кастомизация Linux действительно позволяет создать юзеру свой собственный дизайн или воспользоваться предустановленными пресетами, напоминающими о существовании таких популярных операционных систем как MacOS или Windows. Однако если речь идет о таких важных качествах, как быстрота и эффективность работы с Linux, то, уверен, опытные «линуксоиды» подтвердят: графический UI пока не может заменить текстовые команды. Иными словами, юзер, владеющий базовыми навыками навигации по системе и «общения» с дистро при помощи командной строки, всегда может рассчитывать на наиболее рациональное решение возникшей перед ним задачи. Сегодня мы поговорим о нескольких командах, которые используются в системе для работы с файлами Linux. Когда вы начинаете вводить текст в командной строке, то по умолчанию оказываетесь в определенной директории, которая в Linux получила название «рабочей». Узнать какая именно это директория можно посмотр
Оглавление

Дистрибутивы сегодня соревнуются в красоте и комфорте рабочих столов. Кастомизация Linux действительно позволяет создать юзеру свой собственный дизайн или воспользоваться предустановленными пресетами, напоминающими о существовании таких популярных операционных систем как MacOS или Windows. Однако если речь идет о таких важных качествах, как быстрота и эффективность работы с Linux, то, уверен, опытные «линуксоиды» подтвердят: графический UI пока не может заменить текстовые команды.

howtogeek.com
howtogeek.com

Иными словами, юзер, владеющий базовыми навыками навигации по системе и «общения» с дистро при помощи командной строки, всегда может рассчитывать на наиболее рациональное решение возникшей перед ним задачи.

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

pwd

Когда вы начинаете вводить текст в командной строке, то по умолчанию оказываетесь в определенной директории, которая в Linux получила название «рабочей». Узнать какая именно это директория можно посмотрев на текст, размещенный перед курсором.

howtogeek.com
howtogeek.com

pwd — это аббревиатура, получившаяся после сокращения громоздкого названия «print working directory». И когда вы запускаете эту команду, то получаете исчерпывающую информацию о своем местоположении в системе. Иными словами, pwd работает как точка на карте в вашем смартфоне, которая показывает пользователю — «вы находитесь здесь». И теперь юзер может двигаться дальше.

cd

Как вы, вероятно, уже поняли, название этой команды также представляет собой сокращение. Чтобы каждый раз не печатать «change directory», юзеры используют cd в качестве обозначения для необходимости сменить директорию, в которой они оказались. Команда имеет различные написания в зависимости от того, насколько подробным прописывается путь к папке и куда «направляется» юзер.

Например:

  • cd /usr/local/bin

При этом нужный каталог указывается в качестве так называемого «первого аргумента». Если пользователь хочет вернуться в домашнюю директорию из своего «путешествия» по Linux, он всегда может просто набрать cd, никак более не уточняя свой «маршрут»

ls

И снова перед нами сокращение, на этот раз английского слова «list». В отличие от предыдущих команд, впрочем, этот запрос имеет гораздо больше изначальных опций.

howtogeek.com
howtogeek.com

ls применяется для того, чтобы провести «инвентаризацию» каталога, куда «пришел» юзер. Команда выводит список файлов в директории и поддиректориях, если таковые имеются. Просто набрав ls, пользователь получает общий перечень файлов. Если юзер ищет максимум инфо на какой-то специфический файл, то ему необходимо ввести дополнительную часть команды, отвечающую за вывод данных в более подробном виде. Добавив -l (long format) к ls, пользователь получает примерно такую картинку:

howtogeek.com
howtogeek.com

При работе с -l flag юзер также получает информацию о формате файла. Определить «что есть что» помогают условные обозначения, представляющие собой первые символы каждой строки. Если она начинается с d, то это директория, l обозначает линк, а «-» (без кавычек) классифицирует данные как регулярный файл.

Эксперты отмечают, что объективно более удобной опцией для индикации является опция команды с добавлением -F. Пользователь быстрее может разобраться в представленных данных, опираясь на классификацию символа /, обозначающего директории, и @, указывающего на ссылки.

mkdir

Побродив немного по Linux, пользователь рано или поздно столкнется с ситуацией, когда ему нужно будет создать новую директорию. И команда mkdir, название которой, как вы уже наверняка догадались, представляет собой сокращение словосочетания «маке directories», очевидно предназначена для инициализации и выполнения именно таких «созидательных» процессов.

Речь может идти не просто об одном каталоге, но также и о создании «многоуровневой иерархической системы папок», как любят писать в умных учебниках. Но mkdir, исполненная в своем базовом варианте, начнет «ругаться», если вы захотите создать сразу несколько уровней каталогов одновременно. И потому юзеру необходимо добавить так называемый флаг -p. Тогда mkdir сменит гнев на милость и разрешит пользователю создать необходимое количество папок.

Примерно вот так:

  • mkdir -p one/two/three
howtogeek.com
howtogeek.com

cp и rm / rmdir

Копирование и удаление файлов — рутинные операции для пользователей практически любой операционной системы, и даже такой закрытой, как «яблочная» iOS. В своей базовой форме команда для копирования представляет собой указание системе адреса директории, где находится нужный файл, и местоположение каталога, куда этот файл должен быть скопирован. При этом юзер может одновременно оперировать сразу несколькими файлами.

К примеру:

  • cp resume.pdf resume2.pdf
  • cp file1.md file2.md file3.md myfiles

Удаление ненужных данных осуществляется при помощи противоположной по значению команды rm / rmdir. Пользователь просто указывает системе на файлы, в которых больше не нуждается и задает их количество в описании. Эксперты пишут, что добавление уже знакомого нам -f ускоряет процесс, так как в некоторых случаях бдительная Linux, несмотря на имеющиеся у юзера права в системе, тем не менее требует, так сказать, письменного подтверждения от пользователя для продолжения своих действий. И если в целом это весьма положительный момент, который подтверждает репутацию Linux как безопасной системы, все же рутинная работа с файлами значительно ускоряется, когда пользователю не нужно каждый раз подтверждать свои операции. Правда, -f также отменяет и сообщения системы в случае, если файла, который юзер пытается удалить, просто не существует на его машине.

  • rm -f filename

Еще один нюанс заключается в том, что команда rm по умолчанию не представляет возможности далять целые директорами. Но вопрос решается добавлением -d в строку выполняемой команды.

mv

Очередная стандартная операция, часто выполняемая пользователями. Ведь файл можно не только скопировать или удалить, но и переместить. И mv, название которой является сокращением английского глагола «move», предлагает пользователю воспользоваться этой третьей опцией. Делает она это довольно изящно, одновременно перемещая и переименовывая файлы.

howtogeek.com
howtogeek.com

ln -s

«Links» или референсные ссылки позволяют ссылаться на обозначенные таким образом файлы в нескольких адресах операционной системы. При этом в отличие от копирования, такого рода символические (или как их называют мягкие) ссылки на занимают дополнительного места. Эксперты подчеркивают своеобразие работы «мягких ссылок», названных так из-за отсутствие жесткой привязки референсного линка и файла, на который он ссылается. Важно понимать, что символическая ссылка получает определенные права доступа, как обычный файл, но не содержит в себе копии оригинальных данных. Функционал in можно сравнить с процессом создания ярлыков на Windows PC. Символическая ссылка не удаляется при стирании оригинального файла. И точно также удаление ссылки никак не влияет на состояние и доступность оригинальных данных. Интересно, что для своего удобства юзер может создавать несколько мягких ссылок на один и тот же файл, однако их названия в системе будут отличаться.

  • ln -s original link

Отметим также, что без опции -s создаваемая ссылка по умолчанию жестокой, и такой линк существует уже по своим, более «жестко» прописанным в linux правилам.