Разбор ошибок
❌ Ошибка 1. rm -rf без проверки пути
# Хотели удалить /home/user/tmp_files
# Случайно написали:
rm -rf /home/user /tmp_files
# Удалило весь /home/user!
Почему: пробел разделил аргументы — rm -rf получила два аргумента: /home/user и /tmp_files. Оба удалены.
Как правильно: перед удалением сделайте ls на этот путь, убедитесь, что там то, что нужно. Используйте rm -ri (интерактивный режим, спрашивает подтверждение) для важных папок.
❌ Ошибка 2. mkdir без -p для вложенных папок
mkdir /home/user/projects/web/src
# mkdir: cannot create directory '/home/user/projects/web/src':
# No such file or directory
Почему: mkdir без флагов создаёт только одну директорию и требует, чтобы родительская уже существовала.
Как правильно: mkdir -p /home/user/projects/web/src — флаг -p создаёт всю цепочку.
❌ Ошибка 3. rmdir на непустую папку
rmdir /home/user/docs
# rmdir: failed to remove 'docs': Directory not empty
Почему: rmdir работает только с пустыми папками — это защита от случайного удаления.
Как правильно: если папку нужно удалить со всем содержимым — используйте rm -r /home/user/docs. Сначала сделайте ls, убедитесь в содержимом!
❌ Ошибка 4. cp без -r при копировании папки
cp /home/user/animals /tmp/
# cp: -r not specified; omitting directory 'animals'
Почему: cp без -r копирует только файлы; папку не трогает и сообщает об этом.
Как правильно: cp -r /home/user/animals /tmp/.
❌ Ошибка 5. mv переписывает без предупреждения
# В /home/humans уже есть файл adam
mv /tmp/adam /home/humans/adam
# Старый adam перезаписан без вопросов!
Почему: mv (как и cp) по умолчанию перезаписывает цель без предупреждения.
Как правильно: используйте mv -i (interactive) — спросит перед перезаписью. Или сначала проверьте: ls /home/humans.
❌ Ошибка 6. Пробел в имени файла без кавычек
mkdir my folder
# Создаёт ДВЕ папки: my и folder!
mkdir "my folder"
# Создаёт ОДНУ папку: my folder
Почему: оболочка разбивает строку по пробелам на аргументы. Пробел в имени — нужны кавычки или обратный слеш: my\ folder.
Как правильно: избегайте пробелов в именах файлов (используйте - или _). Если необходимо — оборачивайте в кавычки.