← Назад к вопросам

Как перейти в другую папку в Linux?

1.0 Junior🔥 132 комментариев
#Linux

Комментарии (2)

🐱
deepseek-v3.2PrepBro AI6 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Переход между директориями в Linux

В Linux для навигации по файловой системе используется команда cd (change directory). Это одна из фундаментальных команд, которую должен знать каждый пользователь, тестировщик или разработчик, работающий в Unix-подобных системах, включая автоматизацию задач на серверах или в CI/CD-пайплайнах.

Базовый синтаксис команды cd

cd [опции] [путь_к_директории]

Основные способы навигации

1. Переход в абсолютный путь

Абсолютный путь начинается с корня файловой системы (/).

cd /home/user/documents/projects

2. Переход в относительный путь

Относительный путь зависит от текущей рабочей директории.

cd documents/projects  # Переход в поддиректорию projects внутри documents

3. Специальные символы и сокращения

  • cd ~ или просто cd — переход в домашнюю директорию текущего пользователя (например, /home/username).
  • cd .. — переход на один уровень вверх (в родительскую директорию).
  • cd ../.. — переход на два уровня вверх.
  • cd - — возврат в предыдущую рабочую директорию. Очень полезно для быстрого переключения между двумя путями.
  • cd . — переход в текущую директорию (операция, которая практически ничего не меняет, но иногда используется в скриптах для "обновления" контекста).

Практические примеры для QA Automation

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

# Пример скрипта для перехода в директорию с тестами и запуска
#!/bin/bash

# Сохраняем текущую директорию, чтобы вернуться позже
ORIGINAL_DIR=$(pwd)

# Переходим в директорию с проектом автоматизации
cd ~/automation/project/ui_tests

# Запускаем тесты (например, через pytest)
pytest --alluredir=./reports

# Возвращаемся в исходную директорию
cd "$ORIGINAL_DIR"

# Далее можно обработать отчеты, например, отправить их в артефакты

4. Работа с переменными окружения

Часто пути хранятся в переменных для удобства и переносимости скриптов.

# Можно использовать предопределенную переменную $HOME
cd $HOME/downloads

# Или свои переменные
TEST_REPORTS_DIR="/var/log/qa/reports"
cd $TEST_REPORTS_DIR

Важные нюансы и частые ошибки

  • Пробелы в путях: Если имя директории содержит пробелы, его нужно заключить в кавычки или использовать экранирование.
    cd "My Projects"/Tests  # Правильно
    cd My\ Projects/Tests    # Правильно (экранирование пробела)
    cd My Projects/Tests     # Ошибка! Команда интерпретирует это как три аргумента
    
  • Права доступа: Команда cd завершится с ошибкой, если у пользователя нет прав на чтение и выполнение (r-x) для целевой директории или любой из родительских директорий в пути.
    cd /root  # Ошибка "Permission denied", если вы не root
    
  • Несуществующий путь: Если указанной директории не существует, вы получите ошибку No such file or directory.
  • Символические ссылки: Команда cd по умолчанию следует по символическим ссылкам. Если нужно перейти в саму директорию-ссылку (а не в то, на что она указывает), используйте cd -P.

Полезные связки команд

Для эффективной работы в терминале cd часто комбинируют с другими командами:

  • pwd (print working directory) — показывает полный путь текущей директории. Всегда полезно проверить, куда вы перешли.
    cd /some/complex/path && pwd
    
  • ls — вывод содержимого директории. Классический паттерн: перешли -> посмотрели, что внутри.
    cd ~/logs && ls -la
    

Для автоматизации в Python можно использовать модуль os:

import os

# Смена директории
os.chdir('/path/to/new/directory')

# Получение текущей директории
current_dir = os.getcwd()
print(f"Сейчас в: {current_dir}")

В заключение, уверенное владение командой cd и понимание структуры путей в Linux — это базовый, но критически важный навык. Он позволяет не только вручную исследовать систему при анализе дефектов или логов, но и писать надежные скрипты для автоматизации развертывания тестового окружения, обработки результатов тестирования и интеграции с инструментами CI/CD.

Как перейти в другую папку в Linux? | PrepBro