Управление файлами в терминале Linux: 11 команд, которые нужно знать
TL;DR
Краткий набор команд для повседневной работы с файлами в терминале Linux: просмотр (ls), навигация (cd), создание (mkdir, touch), копирование и перемещение (cp, mv), удаление (rm, rmdir), ссылки (ln -s), управление правами (chmod) и полнофункциональный файловый менеджер mc. Всегда думайте о бэкапе и используйте sudo только при необходимости.

Быстрые ссылки
ls- список файловcd- перейти в директориюrm- удалить файлrmdir- удалить пустую директориюmv- переместить или переименоватьcp- копировать файлыmkdir- создать директориюchmod- изменить права доступаtouch- создать пустой файлmc- полнофункциональный файловый менеджер
Работать в терминале удобно и безопасно, если знать базовые команды управления файлами и принципы их использования. По философии Unix каждая команда делает одну вещь и делает её хорошо. Midnight Commander (mc) — удобный интерфейс поверх этих команд.
Related: 10 Basic Linux Commands for Beginners
ls — список файлов
Команда ls выводит содержимое директории. По умолчанию показывает текущую директорию.

Примеры и полезные опции:
ls— простое перечислениеls -l— подробный (длинный) формат: права, владелец, размер, датаls -a— показать скрытые файлы (начинаются с.)ls -R— рекурсивно показать содержимое вложенных директорийls /home— показать содержимое другой директории
Советы:
- Для сортировки по времени используйте
ls -lt, по размеруls -lS. - Если имена файлов содержат пробелы, оборачивайте путь в кавычки или экранируйте пробелы.
cd — перейти в директорию
Команда cd меняет текущую директорию.

Примеры:
cd Desktop— перейти в папку Desktop внутри домашней директорииcd /usr/share— перейти по абсолютному путиcd ..— подняться на уровень вышеcdилиcd ~— перейти в домашнюю директориюcd -— вернуться в предыдущую директорию
Совет: храните часто используемые директории в переменных окружения или используйте алиасы для ускорения навигации.
rm — удалить файлы
Команда rm удаляет файлы. Она не перемещает в корзину и по умолчанию не спрашивает подтверждения.

Примеры:
rm file— удалить файлfileв текущей директорииrm /path/to/file— удалить файл по абсолютному путиrm -i file— интерактивный режим (будет спрашивать подтверждение)rm -r directory— рекурсивно удалить директорию и всё внутри (ОПАСНО)rm -rf directory— без подтверждения, форсированно (опасно и используется с осторожностью)
Важно:
- Никогда не выполняйте
rm -rf /или команды, которые вы не понимаете полностью. - На рабочем сервере лучше сначала сделать
lsтого, что собираетесь удалить, чтобы проверить список файлов.
rmdir — удалить пустую директорию
Команда rmdir удаляет только пустые директории.
Если директория не пуста, используйте rm -r, но сначала убедитесь, что внутри нет нужных данных.
Пример использования:
rmdir directory— удалить пустую папкуdirectory
mv — переместить или переименовать
mv перемещает файл или директорию в новое место; также служит для переименования.

Примеры:
mv file newfile— переименоватьfileвnewfilemv file /home/howtogeek/— переместить файл в указанную директориюmv *.txt /backup/texts/— переместить все.txtфайлы в папку
Совет: используйте mv -i для интерактивного подтверждения при перезаписи.
mv file /home/howtogeek
cp — копировать файлы
cp копирует файлы и директории (с опцией рекурсии).
Примеры:
cp file newfile— создать копиюfileкакnewfilecp -r dir1 dir2— рекурсивно скопироватьdir1вdir2
Пример команды:
cp -r /home/howtogeek/Downloads /home/chris
Советы:
- Для сохранения прав и атрибутов используйте
cp -a(архивный режим). - При больших объёмах данных полезно включать индикатор прогресса (
rsyncилиpv).
mkdir — создать директорию
mkdir создаёт новую директорию.

Примеры:
mkdir example— создать папкуexampleв текущей директорииmkdir -p a/b/c— создать дерево директорий сразу (если части отсутствуют)
ln — создать ссылку
ln создаёт ссылки. Чаще используют символические (symlink) с опцией -s.
Пример:
ln -s /home/howtogeek/Downloads /home/howtogeek/Desktop

Заметки:
- Жёсткая ссылка (
lnбез-s) ссылается на тот же inode — не работает для директорий и между файловыми системами. - Символическая ссылка указывает путь и может быть относительной.
chmod — изменить права доступа
chmod изменяет права доступа к файлу или директории.

Примеры:
chmod +x script.sh— добавить право на исполнениеchmod -x script.sh— убрать право на исполнениеchmod 644 file— установить права в числовом виде (rw-r–r–)
Короткое объяснение прав: rwx — чтение, запись, исполнение; три группы — владелец, группа, остальные.
touch — создать пустой файл
touch создаёт пустой файл или обновляет время доступа/изменения существующего файла.

Пример:
touch example— создать файлexampleили обновить метки времени
mc — полнофункциональный файловый менеджер
Midnight Commander (mc) — текстовый двухпанельный файловый менеджер для терминала. Часто удобнее для визуального управления файлами.
Установка на Ubuntu:
sudo apt-get install mc
Запуск:
mc— запустить менеджер

Управление:
- Стрелки — навигация
Tab— переключение между панелямиF5/F6— копировать/переместитьAlt-1— помощь,Alt-2— меню
Можно использовать мышь, если терминал поддерживает её.
Безопасность и общие рекомендации
- Всегда делайте резервные копии критичных данных перед массовыми операциями.
- Используйте
sudoтолько при необходимости. На Ubuntu добавляйтеsudoперед командами, меняющими системные файлы. - Перед
rm -rвыполнитеlsи проверьте путь. - Для массовых переносов и синхронизации предпочитайте
rsync— он надёжнее и позволяет возобновлять операции.
Важное замечание:
Команды
rm -rиrm -rfмогут удалить важные данные без возможности восстановления. Дважды проверьте путь и используйте интерактивный режим, если не уверены.
Мини-методология: безопасная работа с файлами
- Определите цель операции (удаление, копирование, архивирование).
- Просмотрите содержимое целевой директории (
ls -la). - Выполните тестовую операцию на небольшой выборке или в тестовой директории.
- Выполните операцию с флагом подтверждения (
-i) или используйте--dry-runуrsync. - Проверьте результат и при необходимости откатите изменения из резервной копии.
Руководство действий: переименование или перемещение большого набора файлов
Шаги:
- Сделайте бэкап исходной директории:
cp -a dir dir.backup - Просмотрите файлы:
ls -1 dir | head - Используйте
mvв цикле илиrenameдля массового переименования.
Пример безопасного массового переименования (bash):
mkdir -p /tmp/preview_move
for f in *.txt; do
echo "mv -- '$f' '/path/to/dest/${f%.txt}.bak'"
done- Сначала выполните с
echo, чтобы увидеть команды. - После проверки уберите
echoи выполните реальную операцию.
Критерии приёмки
- Все требуемые файлы перемещены/переименованы.
- Количество файлов соответствует ожиданию (
ls | wc -l). - Проверены хэши или размеры у образцов файлов.
Ролевые чек‑листы
Для начинающего пользователя:
- Изучите
ls,cd,mkdir,touch,cp. - Не используйте
sudoбез необходимости. - Работайте в домашней директории для экспериментов.
Для разработчика:
- Уметь быстро искать и фильтровать (
ls -l | grep,find). - Использовать
chmodиln -sдля сценариев разработки. - Понимать
rsyncи резервное копирование.
Для системного администратора:
- Планировать операции с
cron/скриптами. - Проверять права и владельцев (
stat,getfacl). - Уметь быстро откатить изменения из бэкапа.
Граф для выбора команды (Mermaid)
flowchart TD
A[Что нужно сделать?] --> B{Создать, переместить
или удалить?}
B -->|Создать| C[mkdir или touch]
B -->|Переместить/переименовать| D[mv]
B -->|Копировать| E[cp или rsync]
B -->|Удалить| F{Пустая директория?}
F -->|Да| G[rmdir]
F -->|Нет| H[rm -r 'с осторожностью']Короткий глоссарий
- inode — метаданные файла в файловой системе.
- symlink — символическая ссылка, указывающая путь к другому файлу.
- chmod — команда для изменения прав доступа.
- rsync — инструмент для синхронизации директорий.
Совместимость и примечания по дистрибутивам
Большинство перечисленных команд стандартны для GNU/Linux. На минималистичных дистрибутивах некоторые утилиты (например, mc) могут отсутствовать и устанавливаться через менеджер пакетов (apt, dnf, pacman). Синтаксис основных команд одинаков, но опции могут чуть отличаться в разных реализациях (BusyBox vs GNU coreutils).
Безопасность и гибкость
- Для операций с критичными данными используйте
--backupуcpилиmv, или создавайте резервные копии вручную. - Для сетевой передачи и восстановления используйте
rsyncс--partial --progress. - Контролируйте права доступа (
chmod,chown) и проверяйте ACL при необходимости (getfacl,setfacl).
Заключение
Эти базовые команды покроют большинство задач управления файлами в Linux. Практикуйтесь в тестовой среде, используйте интерактивные флаги и делайте резервные копии перед массовыми операциями.
Важно: при работе с системными директориями добавляйте sudo только после осознанной проверки команды.
Похожие материалы
Как выбрать стриминговый сервис — руководство
Запланировать автозапуск Mac — инструкция
Как обновить Google Chrome — быстро и безопасно
Настройка панели быстрых действий на Samsung Galaxy
Typosquatting — как распознать и защититься