Learning Platform
Глоссарий Troubleshooting
Урок 03.03 · 18 мин
Начальный
pwdlscdmkdirКоманды

Первые команды: pwd, ls, cd, mkdir

Терминал открыт, приглашение $ ждёт. Пора напечатать первые команды. Их будет четыре, и они отвечают на четыре простых вопроса:

  • pwd - где я сейчас нахожусь?
  • ls - что лежит вокруг меня?
  • cd - как перейти в другое место?
  • mkdir - как создать новую папку?

Представь, что ты внутри здания компьютера и ходишь по комнатам-папкам. pwd - это табличка с адресом комнаты. ls - оглядеться вокруг. cd - пройти в другую дверь. mkdir - построить новую комнату.

Печатай команды ровно как в примерах, нажимай Enter после каждой и смотри на ответ. После каждой команды я показываю ожидаемый вывод - то, что должен написать компьютер. Если у тебя другое - это тоже разберём.

NOTE

В примерах строка начинается с $ - это приглашение, его печатать не надо, оно уже на экране. Печатаешь только то, что идёт после $. Строки без $ - это ответ компьютера, его тоже печатать не нужно, он появится сам.


pwd - где я нахожусь

pwd расшифровывается как print working directory - «покажи рабочую папку». Это первое, что стоит спросить у компьютера: где я сейчас? Печатай:

$ pwd
/Users/student

На macOS вывод обычно начинается с /Users/ и твоего имени. В Linux и WSL2 - с /home/:

$ pwd
/home/student

Этот текст с косыми чертами называется путь (по-английски path). Он показывает твой адрес внутри компьютера, как адрес дома: страна, город, улица, дом. Когда ты только открыл терминал, ты находишься в своей домашней папке - личной комнате, где лежат твои файлы.

Подробно про пути будет целый модуль дальше. Сейчас достаточно понять: pwd всегда честно отвечает, где ты.

TIP

Если запутался, куда зашёл, - печатай pwd. Эта команда ничего не меняет и не ломает, только показывает адрес. Её можно вызывать сколько угодно раз.


ls - что вокруг меня

ls - сокращение от list, «перечисли». Команда показывает, что лежит в текущей папке: какие там файлы и вложенные папки. Печатай:

$ ls
Desktop    Documents    Downloads    Music    Pictures

Это значит: в твоей домашней папке лежат папки Desktop (рабочий стол), Documents (документы), Downloads (загрузки) и так далее. Имена могут отличаться, но что-то подобное ты увидишь.

Если папка пустая, ls ничего не покажет - просто сразу вернётся приглашение, и это нормально:

$ ls
$

Пустой ответ не означает ошибку. Он означает: «здесь пока ничего нет».


cd - перейти в другое место

cd - это change directory, «смени папку». С её помощью ты переходишь из одной папки в другую, как открываешь дверь и заходишь в соседнюю комнату. После имени cd через пробел пишешь, куда идти.

Чтобы пример сработал у всех одинаково, сначала создадим папку, в которую будем заходить. Команду mkdir («создай папку») подробно разберём чуть ниже, а пока просто повтори за мной - сделаем папку demo:

$ mkdir demo
$

Теперь зайдём в неё:

$ cd demo
$

Заметь: cd обычно ничего не выводит - просто молча переходит и возвращает приглашение. Чтобы убедиться, что мы реально переехали, спросим pwd:

$ pwd
/Users/student/demo

Видишь? К адресу добавилось /demo. Мы внутри этой папки.

NOTE

Здесь мы специально сначала создали папку demo, а потом зашли в неё. Почему не взяли готовую Downloads? Потому что на свежей системе - особенно в Linux и WSL2, где только что создали пользователя, - папки Downloads может ещё не быть, и cd Downloads ответит no such file or directory. Если папку сначала создать через mkdir, пример работает на любой системе: и на Mac, и в WSL2, и в Linux.

Чтобы вернуться обратно - на шаг назад, в родительскую папку - есть специальная запись из двух точек:

$ cd ..
$ pwd
/Users/student

Две точки .. означают «папка на уровень выше». Мы вернулись домой. А чтобы из любого места мгновенно прыгнуть в домашнюю папку, печатай cd вообще без всего:

$ cd
$ pwd
/Users/student
Как cd перемещает тебя по папкам
cd demoЗаходишь внутрь папки demo - на шаг вглубь
cd ..Две точки означают папку на уровень выше - шаг назад
cdcd без имени мгновенно возвращает в домашнюю папку из любого места

mkdir - создать новую папку

mkdir - это make directory, «создай папку». После команды через пробел пишешь имя новой папки. Создадим папку для практики и назовём её practice:

$ mkdir practice
$

mkdir тоже работает молча - если всё хорошо, просто возвращает приглашение. Проверим, что папка появилась, командой ls:

$ ls
Desktop    Documents    Downloads    Music    Pictures    practice

В конце списка появилась practice - мы её только что создали. Теперь можем туда зайти:

$ cd practice
$ pwd
/Users/student/practice
WARNING

Старайся не использовать пробелы в именах папок. Если напишешь mkdir my folder, компьютер поймёт это как создание ДВУХ папок: my и folder, потому что пробел для него - разделитель слов. Лучше пиши слитно или через дефис: mkdir my-folder или mkdir myfolder. Почему так - разберём в уроке про анатомию команды.


Что делать, если вывод другой

У новичков часто вывод не совпадает с примером. Это нормально и почти всегда легко чинится. Вот частые случаи.

Вывод не такой, как ожидал
command not foundКомпьютер не нашёл такую команду. Почти всегда опечатка: pdw вместо pwd, sl вместо ls
No such fileПапки с таким именем нет рядом. Проверь имя через ls - оно должно совпадать буква в букву
Permission deniedНет прав заходить сюда. Для практики просто оставайся в домашней папке, туда права всегда есть
Другие имена в lsЭто нормально: у каждого свой набор файлов. Главное, что команда сработала и что-то показала

Вывод command not found. Например:

$ pdw
pdw: command not found

Компьютер говорит: «не знаю такой команды». Почти всегда это опечатка. Здесь напечатано pdw вместо pwd. Проверь буквы и набери заново.

Вывод No such file or directory. Например:

$ cd downloads
cd: no such file or directory: downloads

Папки с таким именем рядом нет. Частая причина - регистр букв: в примере папка называется Downloads с большой буквы, а ты напечатал downloads с маленькой. Для компьютера это разные имена. Сначала сделай ls, посмотри точное имя и скопируй его буква в букву.

Вывод Permission denied. Значит, у тебя нет прав заходить в это место. Для учёбы просто оставайся в своей домашней папке (cd без имени вернёт тебя туда) - там права есть всегда.

В ls другие имена, не как в примере. Это нормально! У каждого человека свой набор папок. Главное - что команда сработала и что-то показала. Точное совпадение имён не требуется.


Попробуй сам

Открой терминал и пройди весь маршрут по шагам:

  1. Спроси, где ты: pwd. Запомни адрес.
  2. Оглядись: ls. Посмотри, какие папки рядом.
  3. Создай папку для практики: mkdir sandbox.
  4. Проверь, что она появилась: ls. Найди sandbox в списке.
  5. Зайди в неё: cd sandbox, потом pwd - адрес должен оканчиваться на /sandbox.
  6. Вернись домой: cd .., потом pwd - ты снова в домашней папке.

Если на каком-то шаге вывод не такой - не страшно. Перечитай раздел «Что делать, если вывод другой», проверь опечатки и регистр букв, и повтори. Эти четыре команды нельзя «сломать» ими ничего важного, так что экспериментируй смело.


Проверка знанийKnowledge check
Новичок печатает cd Documents и получает ответ: «no such file or directory: documents». При этом он точно знает, что папка Documents у него есть. Какие две команды и в каком порядке помогут найти причину, и в чём, скорее всего, дело?
ОтветAnswer
Скорее всего, дело в регистре букв: для компьютера Documents (с большой буквы) и documents (с маленькой) - это разные имена. Новичок напечатал имя с другим регистром, чем у настоящей папки. Алгоритм проверки: сначала выполнить ls, чтобы увидеть точные имена всех папок рядом и заметить, как именно пишется нужная папка (например, Documents с большой D). Затем выполнить cd с именем, скопированным буква в букву из вывода ls - то есть cd Documents. Полезно также сначала сделать pwd, чтобы убедиться, что находишься в той папке, где Documents действительно лежит рядом (в домашней папке). Кроме регистра, причиной бывает опечатка в имени или то, что ты находишься не в той папке, где ожидаешь.

Проверьте понимание

Результат: 0 из 0
Концептуальный
Вопрос 1 из 3. Ты запутался, в какой папке находишься. Какая команда честно покажет твой текущий адрес внутри компьютера и при этом ничего не изменит?

Закончили урок?

Отметьте его как пройденный, чтобы отслеживать свой прогресс

Войдите чтобы оценить урок

Прогресс модуля
0 из 4