В операционных системах Linux основные операции с файлами можно разделить на два уровня: пользовательские операции (выполняемые с помощью утилит командной строки) и системные операции (выполняемые на уровне ядра ОС через системные вызовы).
1. Пользовательские операции (Команды терминала)
Для повседневной работы с файлами в консоли используются следующие базовые команды:
Создание файлов:
touch — создает новый пустой файл. Если файл уже существует, команда обновит время его последнего изменения и доступа, не затронув содержимое.
Создать файл также можно с помощью перенаправления вывода, например: echo "текст" > file.txt (создаст файл с записанным текстом).
Копирование, перемещение и переименование:
cp (copy) — используется для копирования файлов и каталогов. Для копирования каталога со всеми вложенными файлами применяется опция -r (рекурсивно).
mv (move) — выполняет сразу две функции: перемещает файл в другой каталог или переименовывает его. Для самой системы эти операции идентичны: физически данные на диске остаются на месте, изменяются только данные о пути и имени в каталоге.
Удаление файлов:
rm (remove) — удаляет файлы. Для удаления каталога вместе со всем его содержимым нужно добавить ключ -r (rm -r). Если добавить ключ -f (force), удаление произойдет принудительно, без дополнительных запросов. Важно помнить, что в командной строке Linux файлы не перемещаются в «корзину», поэтому восстановление данных после rm крайне затруднительно.
Просмотр содержимого текстовых файлов:
cat — считывает весь файл и сразу выводит его содержимое на экран. Подходит для небольших файлов.
less и more — утилиты для постраничного просмотра больших файлов, позволяющие прокручивать текст вверх/вниз и искать по нему.
head и tail — выводят на экран только начало (обычно первые 10 строк) или конец файла соответственно. Команда tail -f часто используется для отслеживания логов в реальном времени, выводя новые строки по мере их появления.
Поиск информации:
find — ищет файлы в файловой системе по заданным критериям (имя, размер, дата изменения, тип файла).
grep — осуществляет поиск конкретных текстовых строк внутри самих файлов (можно использовать регулярные выражения).
Управление правами доступа:
chmod — изменяет права на чтение (r), запись (w) и выполнение (x) для владельца файла, группы и остальных пользователей.
chown / chgrp — изменяют пользователя-владельца файла и группу.
Когда вы вводите консольную команду, программа преобразует её в системные вызовы — запросы к ядру операционной системы. Базовый жизненный цикл работы с файлом внутри ОС выглядит так:
Create (Создание) — создание пустого файла, выделение для него места на диске и внесение записи в каталог.
Open (Открытие) — считывание параметров файла с диска в оперативную память, проверка прав доступа и создание файлового дескриптора. Без открытия с файлом работать нельзя.
Seek (Позиционирование) — перемещение указателя на определенную позицию внутри файла.
Read / Write (Чтение и Запись) — перенос данных из файла в оперативную память процесса (чтение) или из памяти на диск (запись), начиная с текущей позиции.
Close (Закрытие) — сброс буферов на диск и освобождение ресурсов оперативной памяти после завершения работы с файлом.
Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)
Короткая ссылка:
В операционных системах Linux основные операции с файлами можно разделить на два уровня: пользовательские операции (выполняемые с помощью утилит командной строки) и системные операции (выполняемые на уровне ядра ОС через системные вызовы).
1. Пользовательские операции (Команды терминала)
Для повседневной работы с файлами в консоли используются следующие базовые команды:
Создание файлов:
touch — создает новый пустой файл. Если файл уже существует, команда обновит время его последнего изменения и доступа, не затронув содержимое.
Создать файл также можно с помощью перенаправления вывода, например: echo "текст" > file.txt (создаст файл с записанным текстом).
Копирование, перемещение и переименование:
cp (copy) — используется для копирования файлов и каталогов. Для копирования каталога со всеми вложенными файлами применяется опция -r (рекурсивно).
mv (move) — выполняет сразу две функции: перемещает файл в другой каталог или переименовывает его. Для самой системы эти операции идентичны: физически данные на диске остаются на месте, изменяются только данные о пути и имени в каталоге.
Удаление файлов:
rm (remove) — удаляет файлы. Для удаления каталога вместе со всем его содержимым нужно добавить ключ -r (rm -r). Если добавить ключ -f (force), удаление произойдет принудительно, без дополнительных запросов. Важно помнить, что в командной строке Linux файлы не перемещаются в «корзину», поэтому восстановление данных после rm крайне затруднительно.
Просмотр содержимого текстовых файлов:
cat — считывает весь файл и сразу выводит его содержимое на экран. Подходит для небольших файлов.
less и more — утилиты для постраничного просмотра больших файлов, позволяющие прокручивать текст вверх/вниз и искать по нему.
head и tail — выводят на экран только начало (обычно первые 10 строк) или конец файла соответственно. Команда tail -f часто используется для отслеживания логов в реальном времени, выводя новые строки по мере их появления.
Поиск информации:
find — ищет файлы в файловой системе по заданным критериям (имя, размер, дата изменения, тип файла).
grep — осуществляет поиск конкретных текстовых строк внутри самих файлов (можно использовать регулярные выражения).
Управление правами доступа:
chmod — изменяет права на чтение (r), запись (w) и выполнение (x) для владельца файла, группы и остальных пользователей.
chown / chgrp — изменяют пользователя-владельца файла и группу.
Когда вы вводите консольную команду, программа преобразует её в системные вызовы — запросы к ядру операционной системы. Базовый жизненный цикл работы с файлом внутри ОС выглядит так:
Create (Создание) — создание пустого файла, выделение для него места на диске и внесение записи в каталог.
Open (Открытие) — считывание параметров файла с диска в оперативную память, проверка прав доступа и создание файлового дескриптора. Без открытия с файлом работать нельзя.
Seek (Позиционирование) — перемещение указателя на определенную позицию внутри файла.
Read / Write (Чтение и Запись) — перенос данных из файла в оперативную память процесса (чтение) или из памяти на диск (запись), начиная с текущей позиции.
Close (Закрытие) — сброс буферов на диск и освобождение ресурсов оперативной памяти после завершения работы с файлом.
В операционных системах Linux основные операции с файлами можно разделить на два уровня: пользовательские операции (выполняемые с помощью утилит командной строки) и системные операции (выполняемые на уровне ядра ОС через системные вызовы).
1. Пользовательские операции (Команды терминала)
Для повседневной работы с файлами в консоли используются следующие базовые команды:
Создание файлов:
touch — создает новый пустой файл. Если файл уже существует, команда обновит время его последнего изменения и доступа, не затронув содержимое.
Создать файл также можно с помощью перенаправления вывода, например: echo "текст" > file.txt (создаст файл с записанным текстом).
Копирование, перемещение и переименование:
cp (copy) — используется для копирования файлов и каталогов. Для копирования каталога со всеми вложенными файлами применяется опция -r (рекурсивно).
mv (move) — выполняет сразу две функции: перемещает файл в другой каталог или переименовывает его. Для самой системы эти операции идентичны: физически данные на диске остаются на месте, изменяются только данные о пути и имени в каталоге.
Удаление файлов:
rm (remove) — удаляет файлы. Для удаления каталога вместе со всем его содержимым нужно добавить ключ -r (rm -r). Если добавить ключ -f (force), удаление произойдет принудительно, без дополнительных запросов. Важно помнить, что в командной строке Linux файлы не перемещаются в «корзину», поэтому восстановление данных после rm крайне затруднительно.
Просмотр содержимого текстовых файлов:
cat — считывает весь файл и сразу выводит его содержимое на экран. Подходит для небольших файлов.
less и more — утилиты для постраничного просмотра больших файлов, позволяющие прокручивать текст вверх/вниз и искать по нему.
head и tail — выводят на экран только начало (обычно первые 10 строк) или конец файла соответственно. Команда tail -f часто используется для отслеживания логов в реальном времени, выводя новые строки по мере их появления.
Поиск информации:
find — ищет файлы в файловой системе по заданным критериям (имя, размер, дата изменения, тип файла).
grep — осуществляет поиск конкретных текстовых строк внутри самих файлов (можно использовать регулярные выражения).
Управление правами доступа:
chmod — изменяет права на чтение (r), запись (w) и выполнение (x) для владельца файла, группы и остальных пользователей.
chown / chgrp — изменяют пользователя-владельца файла и группу.
Когда вы вводите консольную команду, программа преобразует её в системные вызовы — запросы к ядру операционной системы. Базовый жизненный цикл работы с файлом внутри ОС выглядит так:
Create (Создание) — создание пустого файла, выделение для него места на диске и внесение записи в каталог.
Open (Открытие) — считывание параметров файла с диска в оперативную память, проверка прав доступа и создание файлового дескриптора. Без открытия с файлом работать нельзя.
Seek (Позиционирование) — перемещение указателя на определенную позицию внутри файла.
Read / Write (Чтение и Запись) — перенос данных из файла в оперативную память процесса (чтение) или из памяти на диск (запись), начиная с текущей позиции.
Close (Закрытие) — сброс буферов на диск и освобождение ресурсов оперативной памяти после завершения работы с файлом.