
Работа с файлами в Linux: их создание и организация через терминал
Статья
Время чтения
5 минут
Новички в Linux нередко удивляются тому, насколько просто работать в этой системе с помощью терминала. Его стоит освоить, чтобы эффективно справляться с личными и профессиональными задачами. О том, как создавать файлы через терминал и удобно их организовывать, поговорим в этой статье.

Как ориентироваться в файловой системе Linux
Первое, с чего нужно начать пользователю — получить представление о файловой системе Linux и научиться в ней ориентироваться. Для этого нужно ознакомиться с основными командами для работы с файлами и каталогами.
Определение текущего местоположения (pwd)
За определение местоположения в Linux отвечает команда:
pwd
После ее введения в терминал система предлагает адрес корневого каталога /home/demo, который расположен внутри подкаталога /home — он размещается в директории верхнего уровня root, но в терминале просто обозначается знаком «/».

Просмотр содержимого каталогов (ls)
Чтобы ознакомиться с содержанием каталога, нужно применить команду:
ls
В ответ система предложит перечень доступных файлов и папок.

После этого следует указать путь к нужному каталогу — ls /home/demo/Documents. А чтобы система выдала список всех файлов во всех вложенных каталогах в директории, в командную строку нужно ввести:
ls -R /home/demo
При необходимости можно воспользоваться и другими вариантами запроса:
ls -a — покажет скрытые файлы;
ls -al — выведет файлы и директории с расширенной информацией о владельцах файлов и директорий, их правах доступа и так далее.
Поиск необходимых файлов (find, locate)
Когда предстоит найти конкретный файл, в Linux применяются команды find и locate:
find отвечает за поиск в определенном каталоге, поэтому должна состоять из двух аргументов: пути к директории и имени необходимого файла. Например, чтобы отыскать документ abc.txt в домашнем каталоге demo, необходимо ввести:
find /home/demo -name abc.txt
locate также предназначена для поиска, но при введении выдает все возможные файлы и папки с указанным названием. То есть путь к каталогу для этой команды обозначать не нужно. Запрос системе может выглядеть так:
locate abc.txt
Перемещение по каталогам (cd)
Чтобы свободно перемещаться из одного подкаталога в другой, в Linux предусмотрена команда cd.
Для перемещения на один уровень вверх используется cd с двумя точками:
cd ..
Чтобы переместиться прямо в домашнюю директорию пригодится cd с пробелом:
cd
Для перемещения в предыдущий каталог нужно ввести cd с дефисом:
cd -

Основные операции для работы с файлами
Рассмотрим наиболее востребованные команды для работы с файлами через терминал Linux.
Создание файла (touch, cat, vim)
touch. Для создания нового файла применяется команда touch и имя файла с его расширением. Запрос может выглядеть так:
touch ~/abc.txt
В команде touch ~/abc.txt значок «тильда» указывает на короткий путь к основной директории пользователя, а abc.txt — имя нового текстового документа.
cat. Еще создать файл можно при помощи команды cat. Она же применяется и для чтения содержимого документа, но не для редактирования. Для создания файла команду cat нужно дополнить оператором перенаправления «>»:
cat>
После ввода этой команды появится новый пустой документ. В него можно сразу вставить текст и сохранить с помощью клавиш Ctrl+D.

vim. Еще одна команда, которой часто пользуются для создания файлов в Linux — vim. На самом деле так называется текстовый редактор, встроенный в терминал Linux. Для создания нового документа с ее помощью введите в консоль запрос:
vim abc.txt
Редактирование файла (nano)
Для изменения содержания файлов в Linux по умолчанию предусмотрен редактор nano. Чтобы им воспользоваться, достаточно указать в командной строке nano abc.txt, где abc.txt — название документа:
nano abc.txt
После этого на экране появится окно редактора, где можно менять документ по своему усмотрению.
Просмотр документа (head, tail)
head. Команда head предназначена для просмотра содержания любого текстового файла. После ее получения система покажет первые десять строк в начале документа:
head abc.txt
Однако число отображаемых строк при необходимости можно менять. Например, если нужно вывести только первые пять строк, следует задать такую команду:
head - 5 abc.txt
tail. Команда tail выполняет аналогичную функцию, как и head, с той лишь разницей, что она отображает последние десять строк документа. В таком случае в терминале задаем запрос:
tail abc.txt
Создание каталога (mkdir)
Команда mkdir пригодится, если нужно создать новый каталог. Для выполнения задачи системе нужно указать путь, где должна находиться папка. Например:
mkdir ~/Photos

Переименование и перемещение (mv)
Для смены местоположения файла следует использовать команду mv. Также она применяется для изменения имени документа, фото или видео. Например:
если требуется поместить файл abc.jpg в Photos, необходимо задать системе запрос:
mv abc.jpg /home/demo/Photos
когда нужно поменять название документа, в терминале следует указать:
mv abc.txt abc1.txt
если нужно одновременно переместить файл из одного места в другое и переименовать его, запрос должен быть примерно таким:
mv abc.txt /home/demo/Documents/abc1.txt
Копирование файла (cp)
Чтобы продублировать конкретный файл, в ОС Linux применяется команда cp. К примеру, если нужно создать копию документа с именем abc.txt в корневом каталоге, в командную строку нужно записать:
cp abc.txt /home/Documents
Если же необходимо скопировать целую папку, системе нужно отправить такой запрос:
cp -R /home/demo/tutorials /home/demo/Documents/
Просмотр размера (du, df)
Команда du пригодится, когда нужно узнать размер определенного файла:
du
Однако если в консоли не указать конкретное местоположение, она предоставит объем всех имеющихся файлов в активном каталоге. Чтобы правильно задать запрос, необходимо передать системе путь директории, где расположена искомая папка.
Для получения более подробной информации программисты часто используют дополнительно флаг -sh. Например:
du -sh /home/demo/Photos
А когда нужно посмотреть состояние определенного диска, применяется распоряжение df с флагом -h и его названием: df -h /dev/sda1.
Важно отметить, что команда du автоматически выдает объем файлов, каталогов и дисков в байтах. Если же необходимо посмотреть размер в других значениях, например, в мегабайтах или килобайтах, к команде следует добавить флаг -m или -k соответственно. В этом случае в терминале нужно ввести строку: du -m /home/demo/ или du -k /home/demo/:
du -m /home/demo/
du -k /home/demo/
Так система выдаст объем всего каталога. Чтобы посмотреть размеры файлов, которые в них содержатся, следует добавить в команду флаг -a. Сам запрос можно задать так:
du -ah /home/demo/
Удаление каталогов и файлов (rm)
Для удаления ненужного файла потребуется ввести команду rm, а каталога — аналогичный запрос с добавлением флага -r. В таком случае в терминал следует отправить:
для файла
rm /home/demo/abc.txt
для папки
rm -r /home/demo/Photos
Такие команды необходимо применять аккуратно, так как их действия необратимы.
Коротко о работе с файлами в Linux
На устройствах с установленной системой Linux — в том числе и на виртуальных машинах в облаке — создавать файлы можно как при помощи встроенного менеджера, так и через команды в окне терминала вручную. Эти команды позволяют быстро найти нужный файл, просмотреть его содержимое, копировать, редактировать и перемещать.
Вам может понравиться


Что может chmod: как управлять доступами к файлам и папкам в Linux

Как узнать IP-адрес в Linux через командную строку

Как узнать IP-адрес своего компьютера

Система MySQL: что это и для чего нужна

Команды kill и killall в Linux: как завершить ненужные процессы

Стандарт Tier III для дата-центра: что значит и почему это круто

Какие новости за декабрь и начало января — дайджест Cloud.ru

Что такое FTP-протокол и как настроить FTP сервер

Белые и серые IP, динамические и статические - в чем различие

Как защищать сайты и приложения в облаке от DDoS-атак

Какие новости за ноябрь — дайджест Cloud.ru

BAT-файлы: что это такое, зачем они нужны и как их создавать

Гайд по протоколу HTTP: расшифровка, структура и механизм работы

Межсетевой экран, firewall и брандмауэр: что это, в чем между ними разница и зачем они нужны

Kubernetes на Cloud.ru Evolution: возможности и преимущества

Какие новости за октябрь — дайджест Cloud.ru

Как создать сетевую архитектуру для размещения межсетевых экранов на платформе Облако VMware

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

Какие новости за сентябрь — дайджест Cloud.ru

Высокоресурсные вычисления: роль суперкомпьютеров в жизни и бизнесе

Реферальная программа Cloud.ru: как устроена и как на ней зарабатывать

Сетевая модель OSI: что это такое и зачем она нужна

Какие новости за август — дайджест Cloud.ru

Сетевые протоколы передачи данных — что это такое и какие бывают

Какие новости за июль — дайджест Cloud.ru

Как новые возможности в юридических документах Cloud.ru облегчают работу с договорами и не только

Какие новости за июнь — дайджест Cloud.ru

Как обновления VMware Cloud Director облегчают управление и делают работу с инфраструктурой в ...

Как мы рассчитывали «Панораму российского IT-рынка» за 2022 год

Как снизить риски утечки данных и санкций госрегуляторов: 152-ФЗ в Cloud.ru

Бесплатный курс по работе с Cloud.ru Advanced: рассказываем, в чем польза, кому подойдет и как...

Как модель Anything as a Service упрощает IT-процессы

Снижение рисков на производстве: AI-сервис распознает нарушения ношения СИЗ

Kandinsky 2.1: новый уровень в генерации изображений по текстовому описанию

Облачные сервисы для стартапов: как пройти путь от идеи до цифрового продукта и не разориться

Создать пользователя, настроить 2FA, связаться с поддержкой — новые возможности личного кабине...

VDI: что это, как работает и в чем выгода для бизнеса

Как защитить облачную инфраструктуру — рассказываем на примере межсетевого экрана нового покол...

Как начать использовать AI/ML на практике

Бессерверные вычисления: что это за технология и кому она нужна

Чек-лист: как обеспечить безопасность облачной инфраструктуры

Искусственный интеллект

Что такое IaaS?

Что такое PaaS

Machine Learning

Data Science

Машинное обучение без учителя

Классическое машинное обучение

Нейронные сети

Глубокое обучение

Защита персональных данных: как легче соблюдать закон с Cloud.ru и сохранять спокойствие

Как сохранить IT-инфраструктуру и бизнес: руководство к действию

Машинное обучение и Big Data в кибербезопасности

Ответы на актуальные вопросы

Что такое DDoS-атаки, чем они опасны и как от них защититься

Аудит информационной безопасности: что это, зачем и когда его проводить

Межсетевые экраны: UTM, NGFW-системы, NTA, NDR

Обзор межсетевых экранов, систем IPS и IDS

PostgreSQL vs MySQL: какая система подходит вашему бизнесу

Основы резервного копирования

Специальное предложение «180 дней тестового периода резервного копирования» для всех клиентов
Платформа SberCloud Advanced теперь обеспечивает максимальный уровень защиты персональных данных

Что такое объектное хранилище S3 и как его используют

Customer Enablement: как SberCloud работает с клиентами, чтобы сделать миграцию в облако комфо...

Сеть доставки контента CDN: новые функциональные возможности и преимущества

Объясняем на кейсах: польза CDN для бизнеса

Новая Windows Server 2022 в облаке SberCloud — новые возможности клиентов

Запуск нового сервиса Managed OpenShift в облачной среде SberCloud

Как работает технология DNS

SberCloud Advanced запустила третью ресурсную зону доступности для комфортной работы клиентов

PostGIS в PostgreSQL — как можно использовать

GitLab для начинающих: как и для чего используется

Краткий обзор методологии CI/CD: принципы, этапы, плюсы и минусы

Персональные данные: правильно обрабатываем и храним

Кто и зачем использует облачные модели IaaS и PaaS

152-ФЗ в облаке: хранение персональных данных в облаке

Как работает CDN (Content Delivery Network)?

Service Level Agreement (SLA): все о соглашении об уровне сервиса

Что такое «интернет поведения» (IoB)?

Чек-лист: 6 шагов для успешной миграции в облако

Машинное обучение: просто о сложном

Профессия DevOps-инженер: кто это и чем занимается

Гайд по Kubernetes. Эпизод I: k8s для неразработчиков

Публичные, частные и гибридные облака: в чем разница?
