Смените каталог легко, если вы знаете где вы находитесь в данный момент (ваш текущий каталог) и куда вы хотите отправиться. Каталог, в который вы хотите попасть, выше или ниже текущего?
Чтобы сменить каталог, выполните команду cd. Команда в таком виде перенесёт вас в ваш домашний каталог; чтобы перейти в другой каталог необходимо указать путь к нему.
Вы можете использовать абсолютные или относительные пути. Абсолютные пути указываются от верхнего каталога / (называемого корнем) до указанного каталога; относительные пути указываются от текущего каталога, где бы он не находился. Дерево, показанное ниже, приведено в качестве примера, помогающего понять команду cd.
/directory1directory2directory3
Если вы находитесь в directory3 и хотите перейти в directory1, вы должны подняться в дереве каталогов выше.
Если вы введете:
находясь в каталоге directory3, вы получите сообщение об ошибке, сообщающее о том, что нет такого каталога. Это происходит потому что, действительно, нет каталога directory1 в каталоге directory3.
Чтобы подняться к каталогу directory1, вы должны ввести:
Это абсолютный путь. Он указывает Linux начать сверху и опуститься в каталог directory1.
Запомните, абсолютные пути перенесут вас В любой каталог ИЗ любого, а относительные пути, перенесут вас в каталоги, расположенные ниже текущего.

Рисунок 10-3. Абсолютные пути указывают полный путь

Рисунок 10-4. Относительные пути указываются относительно текущего расположения
Ниже приведено упражнение с относительными и абсолютными путями. В вашем домашнем каталоге введите относительный путь:
Команда cd .. указывает системе подняться на один уровень выше текущего каталога. Очевидно, команда cd ../.. перенесёт вас выше на два каталога.
Выполнив полностью команды этого примера, вы должны оказаться в каталоге /X11, в котором хранятся конфигурационные файлы и каталоги, относящиеся к X Window System.
Взгляните на последнюю команду cd. Вы должны указать системе:
Подняться на один уровень выше к родительскому каталогу вашего домашнего каталога (вероятно, это будет /home)
Затем поднимитесь к родительскому каталога текущего (вероятно, вы окажетесь в /)
Затем спуститесь к каталогу etc
Наконец, перейдите в каталог /X11
и вы на месте.
Таблица 10-2. Параметры команды cd
Теперь когда вы начали понимать как менять каталоги, посмотрите, что произойдет, если вы перейдёте в домашний каталог пользователя root (суперпользователя). Введите:
Если вы не зарегистрированы под именем root, при обращении к этому каталогу вы получите сообщение “в доступе отказано”.
Запрещая доступ к учётным записям root и других пользователей (или их домашним каталогам), ваша система Linux защищается от случайного или преднамеренного повреждения. Обратитесь к разделу
Владение и разрешения
Чтобы перейти в каталог root, воспользуйтесь командой su. Введите эту последовательность команд:
[newuser@localhost newuser]$ suPassword: ваш пароль root [root@localhost newuser]# cd /root [root@localhost /root]#
Как только вы введете правильный пароль root, вы заметите, что ваше приглашение изменилось и теперь в нём отмечено ваше звание суперпользователя, в начале приглашения учётной записи root отображается символ “#” (как показано на Рисунке 10-5).

Рисунок 10-5. Превращение в root
Теперь, если вы выполните cd для перехода к домашнему каталогу пользователя root, вы получите к нему доступ.
Завершив работу под именем root, просто введите в приглашении exit.
[root@localhost /root]# exitexit[newuser@localhost newuser]$
Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером
Навигация
—
Основы командной строки
После запуска операционной системы с графической оболочкой мы попадаем в специальную рабочую область, которую часто называют рабочий стол. Это центральная точка входа, откуда через разные пункты меню начинается работа, запускаются разные задачи. Например, для навигации по файловой системе понадобится проводник.
В командной строке все устроено иначе: после загрузки системы мы попадаем в режим ожидания ввода команды. Этот режим привязан к файловой системе. Можно сказать, что мы всегда находимся внутри какой-то директории, которую называют рабочей директорией (working directory).
В этом уроке мы поговорим о навигации по директориям через командную оболочку.
Как проверить, в какой директории мы находимся
Начнем с самого основного. Проверить, в какой директории мы сейчас находимся, можно командой pwd:
/Users/guestКстати, название команды pwd — это сокращение, которое расшифровывается как print working directory. Похожим образом устроены имена многих команд, что позволяет легче и быстрее их запомнить.
По умолчанию новая сессия командной оболочки открывается внутри домашней директории пользователя. У каждого пользователя своя домашняя директория, поэтому в вашем случае путь будет отличаться.
В приведенном примере есть две неожиданности для тех, кто привык пользоваться Windows:
- В начале указан не диск, а единый корневой каталог
/. Это вершина файловой системы, внутри которой лежат все остальные файлы и директории - Вместо обратных слэшей
\используются прямые слэши/
Подробнее о различиях и файловой структуре мы поговорим в одном из следующих уроков, а сейчас сосредоточимся на навигации.
Как посмотреть список файлов
Изучим команду ls (сокращение от list). Она выводит список файлов и директорий в текущей рабочей директории:
Desktop Documents Downloads Library Movies Music Pictures PublicКак переместиться в другую директорию
Еще одна полезная команда — cd (сокращение от change directory). С помощью нее мы перемещаемся по файловой структуре. Для этого ей нужно передать аргумент — директорию, в которую необходимо переместиться:
# Входим в директориюMusic# Смотрим ее содержимоеiTunes# Смотрим текущую рабочую директорию/Users/guest/Music# Если имя директории содержит пробел, то его нужно экранировать с помощью `\`BestmusicОстановимся на этом моменте подробнее. Возможно, вы знаете, что есть два способа обозначить путь до файла:
- Абсолютный путь начинается от корня
- Относительный путь начинающийся от текущей рабочей директории
Выше мы указали относительный путь. Отличить их друг от друга очень легко:
- Абсолютный — первым символом в пути идет
/ - Относительный — во всех остальных случаях
Команда cd понимает и абсолютные, и относительные пути. Поэтому передавать ей можно что угодно:
# Неважно, в каком месте /Users/guest/Music # Абсолютный путьЕще раз проговорим, что абсолютный путь однозначно определяет адрес файла или директории в файловой системе, а относительный — нет.
Поэтому относительный путь стоит использовать только вместе с текущей рабочей директорией, относительно которой он считается. При передаче абсолютного пути не имеет никакого значения, какая сейчас рабочая директория. Если путь существует, то переход произойдет.
/Users/guestНо есть путь проще. Можно указать специальное значение .. и перейти на директорию уровнем выше:
..
/Users/guestБолее того, с помощью этого заполнителя можно выходить на любое количество уровней, указывая .. через разделитель:
# Выходим на два уровня вверх ../..
/UsersИногда вместо двух точек используется одинарная точка, которая означает текущую директорию. Например, вместо cd Music можно писать cd ./Music — разницы между этими выражениями нет.
# Из любого места/Users/guestНу и, наконец, четвертый вариант. Домашняя директория пользователя имеет специальное обозначение — ~ (тильда). В момент выполнения команды тильда заменяется на абсолютный путь. Поэтому из любого места можно напрямую перейти в любую поддиректорию домашней директории:
# Из любого места ~/Music
/Users/guest/MusicДопустим, вы находитесь в домашней директории и хотите посмотреть файлы в поддиректории Music. Один способ вы уже знаете — для этого нужно перейти в директорию Music и выполнить программу ls.
Как обычно, есть другой способ. Команда ls также может принимать на вход аргумент — директорию, которую нужно проанализировать:
Music
iTunesКак и в случае с командой cd, к аргументу ls применимы понятия абсолютных и относительных путей. Впрочем, это правило распространяется на большинство случаев, где передаются пути.
Команда cd - возвращает в предыдущую директорию. Другими словами, последовательный вызов этой команды переключает между двумя последними посещенными директориями.
Команды cd, ls и pwd вместе составляют основу навигации по файловой структуре. Зная их, вы никогда не потеряетесь и не запутаетесь.
Со временем набирать пути становится все более лениво. Тогда можно дважды нажать Tab и воспользоваться автокомплитом — функцией, которая автоматические завершает имена.
Самостоятельная работа
Изучите содержимое директорий своей файловой системы. При перемещении между разделами с помощью команды cd используйте клавишу Tab для автозаполнения.

Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты.
Для начала работы в терминале Linux не нужно быть гуру администрирования — достаточно знать список базовых команд для навигации и работы с файлами и папками.
Навигация
После подключения к серверу вы оказываетесь в домашней папке пользователя. Чтобы узнать точный путь к вашему текущему местонахождению, воспользуйтесь командой:
pwd
Она выведет текущую рабочую директорию (print working directory).
Если вам нужно перейти в другую папку, для этого используется команда cd (change directory) с указанием пути к нужной вам папке:
cd /home
Говоря о навигации, нельзя не упомянуть сокращения для обозначения некоторых директорий:
Для навигации с помощью команды cd есть два формата указания пути к нужной папке: абсолютный и относительный.
Абсолютный путь — это полный путь от корневой папки сервера «/». Например, вот такой:
/var/www/data/username/data/www/example.com/
Также к абсолютным относятся пути, в которых используется ~ — указание на домашнюю папку текущего пользователя. Например, при доступе к файлу ~/.bash_profile он всегда будет открываться из одного и того же места: вместо ~ будет использоваться значение переменной окружения $HOME, которое не меняется.
Относительный путь — это неполный путь. Он указывается относительно какого-то объекта: например, текущей рабочей директории. То есть в начале отсутствует символ корневой папки «/».
./docs/files/file.txt file.txt
Также относительные пути используются, когда нужно выполнить операцию над файлом или папкой в директории, в которой мы сейчас работаем. Для выполнения команды достаточно указать имя файла или папки — система поймёт, что мы имеем в виду файл из текущего каталога.
Чтобы отобразить список содержимого папки, можно использовать команду ls (list). Если дополнить её ключами -al, она покажет типы данных, разрешения и скрытые файлы. Следующий пример покажет названия файлов и папок текущей рабочей папки:
ls
А этот выведет в терминал подробный список содержимого папки /etc:
ls -al /etc
Чтобы немного упростить себе жизнь, можно использовать консольные файловые менеджеры, например, mc.
Ubuntu и Debian:
apt -y install mc
yum -y install mc
Его особенность — примитивный графический интерфейс. Он позволяет быстро ориентироваться в структуре каталогов, перемещаться между ними, создавать новые директории. Интерфейс разбит на два окна, между которыми вы можете перемещать файлы и папки. Помимо прочего, в нём можно работать и с помощью мыши — перемещаться двойным кликом по папкам, использовать кнопки в нижней части панели.
Поиск
С помощью команды find можно найти на сервере папку или файл по набору условий. Структура команды проста:
find [где искать] [как искать] [что искать]
Например, мы знаем название файла hello.txt, но не знаем, где именно на сервере он лежит. Найти его поможет конструкция:
find / -name "hello.txt"
/указывает, что искать надо, начиная с корневой папки сервера. Если вам известно, где может лежать искомый файл, можно задать путь точнее.-nameуказывает, что искать надо строго по имени."hello.txt"— имя файла, который нам нужно найти. Если известна только часть имени, можно указать сокращённый вариант:"hello*","*.txt"
Кроме -name, команда find имеет множество опций, которые позволяют уточнить условия поиска подробнее. Вот список наиболее полезных параметров:
Больше информации о возможностях find можно узнать в файлах документации:
man find
Из встроенных инструментов поиска можно также отметить утилиту whereis. Она предназначена для поиска бинарных и системных файлов и директорий служб. Следующий пример выведет список всех файлов и папок, имеющих прямое отношение к php:
whereis php
Работа с папками
mkdir /home/user/new
Если нужно создать сразу несколько вложенных папок, можно использовать параметр -p. В таком случае все несуществующие директории, указанные в пути, будут созданы автоматически. Представим, что нам нужно создать вложенные папки docs/photos/2020-08-17 в текущей директории — это будет выглядеть так:
mkdir -p docs/photos/2020-08-17
Если нужно создать несколько папок за раз, можно просто перечислить их через пробел:
mkdir docs pictures games
Удалить папку можно с помощью команды rmdir с указанием пути. Папка будет удалена только в случае, если она пуста (можно использовать параметр --ignore-fail-on-non-empty, чтобы удалить папку в любом случае). Для удаления нескольких вложенных папок можно аналогично использовать параметр -p. Пример ниже удалит папку /photos и все каталоги внутри неё:
rmdir -p docs/photos
Для удаления есть более эффективный инструмент, rm, про который расскажем ниже.
Работа с файлами
Создание
В терминале есть несколько способов создания новых файлов.
Самый простой, одновременно создающий и файл, и недостающие папки — команда touch. Достаточно передать ей полный путь к файлу. Для примера создадим в папке docs папку copies, а внутри неё — файл copies-list.txt:
touch docs/copies/copies-list.txt
Несуществующая папка copies создастся автоматически.
Если нужно создать сразу несколько файлов, можно просто перечислить их через пробел:
touch file1.txt file2.txt file3.txt
Ещё один способ создания новых файлов — вызвать какой-нибудь консольный текстовый редактор с указанием полного пути к файлу. Однако все папки придётся создать заранее. Тогда редактор автоматически создаст файл и откроет его для редактирования. Если не сохранить файл в редакторе, даже пустой, он не будет создан. Команда ниже добавит новый файл с помощью редактора vi:
vi new-file.txt
Для сохранения и выхода из файла в vi нужно нажать клавишу Esc, ввести сочетание :wq и нажать Enter. Для выхода без сохранения нужно также нажать Esc, ввести сочетание :q! и нажать Enter.
Ещё пара способов создания пустых файлов:
cat > new-file.txt echo > new-file.txt
Редактирование
Для редактирования файлов используются консольные текстовые редакторы. Самые известные — vi и nano. В некоторых дистрибутивах vi заменён на vim (vi improved, улучшенный vi) или vim.tiny
Редактор vi будет доступен вам по умолчанию на большинстве Linux-систем.
А теперь к делу. Vi (более известен как Vim) — старый, очень гибкий и при этом не очень простой в плане управления редактор. Собственно, так он и попал в популярные программистские и админские шуточки.
Запуск редактора без аргументов откроет его в режиме справки:
vi
Чтобы закрыть Vim (без сохранения), введите сочетание :q!
Если указать редактору путь к файлу, он откроет его для редактирования. Если файл не существовал, он будет создан:
vi new-file.txt
При первом входе Vim открывает файл в режиме просмотра. Он не позволяет редактировать его содержимое, но можно вводить командные последовательности, перемещаться по тексту, выполнять поиск и пр.
Чтобы начать ввод, нужно перейти в режим редактирования с помощью клавиши I. Чтобы вернуться в режим просмотра, нажмите Esc.
Перемещение по тексту выполняется с клавиатуры:
- перемещение в начало текста: Esc + дважды G
- перемещение в конец текста: Shift + G
- перемещение по строке горизонтально: стрелки ← →
- перемещение по строкам вертикально: стрелки ↑ ↓
- отображение номеров строк: Esc, введите
:set number, нажмите Enter - перемещение по номерам строк: Esc, введите
:номер строки, нажмите Enter
Для выхода с сохранением файла нажмите Esc и введите :wq!
Текстовый редактор vim — краткое руководство
Более современной и удобной альтернативой Vim считается редактор nano. Современные дистрибутивы включают его по умолчанию, но на ранних версиях устанавливать придётся вручную:
Ubuntu и Debian:
apt -y install nano
yum -y install nano
Вызов nano без аргументов откроет пустой редактор. Можно начать ввод (при сохранении вам будет предложено указать имя и сохранить файл) или вызвать режим помощи со списком доступных команд с помощью сочетания Ctrl+G.
Для сохранения файла нажмите Ctrl+O — редактор предложит ввести имя файла: введите имя и нажмите Enter. Если файл существовал, и имя изменять не требуется, просто нажмите Enter.
Для выхода из редактора нажмите Ctrl+X.
Чтение
Бывает, что нам нужно получить какую-то информацию из файла без необходимости редактировать его. В таком случае необязательно использовать текстовый редактор — есть более простые инструменты.
Команда cat позволяет вывести в терминал всё содержимое файла, который указан в качестве аргумента:
cat example.txt
Однако, если мы заведомо знаем, что в файле большой объём информации, нет смысла выводить его целиком. Например, команды head и tail могут вывести часть содержимого с начала или конца файла соответственно. Если добавить к ним ключ -n, можно уточнить, сколько строк текста нужно вывести:
head -n 3 example.txt
tail -n 3 example.txt
Помимо прочего, команда tail очень удобна для чтения логов с ключом -f. В таком режиме она открывает файл в режиме ожидания и выводит все добавляемые данные. Пригодится для тестирования или дебаггинга.
Иногда нам всё-таки нужно полностью просмотреть файл. При этом читать его вывод в терминале неудобно. На такие случаи есть команда less — она открывает файл (или переданный в неё вывод другой команды) в режиме чтения:
less example.com
В режиме чтения less можно перемещаться, искать текст и многое другое. Все командные последовательности и горячие клавиши можно вывести с помощью параметра --help:
less --help
Для выхода из режима чтения введите q и нажмите Enter.
Удаление
Для удаления файлов используется команда rm. Она крайне опасна — неправильное применение грозит удалением всего содержимого сервера. Поэтому, как говорится, семь раз отмерь, один раз отрежь: категорически важно перепроверять путь, который вы указываете для удаления.
Самая простая версия rm удалит файл с предварительным подтверждением — для этого потребуется ввести y и нажать Enter:
rm new-file.txt
Для полного же уничтожения всего и вся к команде добавляются параметры -rf. Первый отвечает за рекурсивное удаление данных (т.е. удаление вложенных файлов и папок), второй позволяет отключить подтверждение при удалении. Например, следующая команда удалит папку photos, размещённую в папке docs, и всё её содержимое:
rm -rf docs/photos
Скачивание и загрузка
Для передачи файлов на сервер и с сервера есть много способов. Самые простые — использование wget, curl или scp.
wgetпозволяет скачивать данные на сервер. Он поддерживает HTTP, HTTPS и FTP протоколы.wget [как скачать] [откуда скачать]
wget https://ru.wordpress.org/latest-ru_RU.tar.gz
С помощью параметра
-Pможно указать путь, куда нужно сохранить скачиваемый файл:wget -P /var/www/example.com https://ru.wordpress.org/latest-ru_RU.tar.gz
Полный список параметров
wgetможно посмотреть в справочной информации:man wget
curlиспользуется как для скачивания файлов на ваш сервер, так и для передачи данных с него на другие серверы / хранилища. Он универсальнееwgetблагодаря огромному количеству поддерживаемых протоколов: FTP, HTTP, HTTPS, IMAP, POP3, SCP, SFTP, SMB, SMTP, Telnet и др.curl [как скачать] [откуда скачать / куда загрузить]
В современных дистрибутивах
curlустановлен по умолчанию. При необходимости установить его вручную можно следующим образом:- Ubuntu и Debian:
apt -y install curl - CentOS:
yum -y install curl
curl -O https://ru.wordpress.org/
В примере мы скачиваем архив
latest-ru_RU.tar.gzпо ссылке и сохраняем его в текущую рабочую директорию с таким же именем — за это отвечает ключ-O. Если использовать опцию-o, можно задать своё имя (wp.tar.gz) для сохраняемого файла:curl -o https://ru.wordpress.org/latest-ru_RU.tar.gz
Если нам нужно загрузить файл c нашего сервера на другой, используется следующая конструкция:
curl -T filename.txt https://example.com/downloads/filename.txt
Здесь файл
filename.txtиз текущей рабочей директории загружается на сайтexample.comв папкуdownloads/и сохраняется с именемfilename.txt. Пример подразумевает, что у нас есть права на запись в указанный каталог.Остальные возможности
curlможно узнать в справочной информации:man curl
- Ubuntu и Debian:
Утилита
scpпозволяет копировать файлы между двумя серверами, используя протокол SSH.scp [где взять файлы] [куда их загрузить]
scp ~/documents/filename.txt @:
scp username@1.2.3.4:/home/username/documents/filename.txt ~/new-documents/
Здесь мы в качестве источника для получения копии файла указали удалённый сервер, а в качестве цели для загрузки копии — папку на текущем сервере.
С помощью
scpаналогичным образом можно копировать данные между двумя удалёнными серверами:scp username1@1.2.3.4:/home/username1/documents/filename.txt username2@2.3.4.5:/home/username2/new-documents
Запуск исполняемых bash-скриптов
Чтобы запустить скрипт script.sh на сервере, нужно выполнить два шага:
Настроить права на запуск файла для пользователей:
chmod +x ./script.sh
Запустить скрипт. Если вы находитесь в той же директории, где лежит скрипт, достаточно вызвать его по имени:
./script.sh
В некоторых случаях нужно использовать команду
shлибо указать путь к исполняемому файлу командной оболочки:sh ./script.sh
/bin/bash ./script.sh
Если вы находитесь в другой директории, для запуска нужно указать полный путь к скрипту.
Чтобы иметь возможность запускать скрипт из любого места на сервере одной простой командой, можно создать для него алиас — короткую команду (псевдоним), которая будет ассоциироваться системой с полным вызовом скрипта.
Весь список существующих алиасов системы можно вывести с помощью команды alias:
Создать свой постоянный алиас можно с помощью файла .bashrc, размещённого в домашнем каталоге вашего пользователя. Нужно открыть его для редактирования:
vi ~/.bashrc
В соответствующем разделе нужно добавить ваш алиас в следующем формате:
alias [короткая команда]='[исходная команда]'
Например, если нам потребуется создать псевдоним для скрипта выше, настройки будут выглядеть так:
alias myScript='sh /путь/к/скрипту/script.sh'
Чтобы после добавления алиас сразу стал доступен, предварительно нужно обновить командную оболочку:
source ~/.bashrc
После этого вы сможете вызывать ваш скрипт с помощью короткой команды.
Скрипт можно добавить в расписание планировщика cron, чтобы он запускался регулярно.
Как настроить cron по ssh
Переименование, перемещение и копирование файлов и папок
Скопировать файл в терминале можно с помощью команды:
cp [что копируем] [куда копируем]
C её помощью можно, к примеру, создать копию конфигурационного файла, который вы хотите изменить. Здесь мы создаём копию конфигурационного файла nginx.conf
cp nginx.conf nginx.conf.copy
Папки копируются аналогично. При необходимости скопировать каталог со всем содержимым (рекурсивно) можно добавить к команде ключ -r:
cp -r /docs /files
Здесь мы создаём копию папки docs со всем её содержимым с именем files.
Переместить или переименовать файл также просто:
mv [что переместить/переименовать] [куда переместить/как назвать]
Например, следующая команда переместит файл file.txt в папку new:
mv file.txt docs/new
Переименовать файл не сложнее:
mv /docs/new/file.txt /docs/new/todolist.txt
В этом примере файл file.txt переименовывается в todolist.txt
Аналогично можно перемещать и переименовывать директории.
Теперь, когда вы можете перемещаться по серверу и работать с файлами и папками, самое время познакомиться с файловой структурой Linux-систем.
Структура каталогов Linux
CD
CHDIR
Формат командной строки:
CD диск:
Команда CD без параметров отображает имена текущих диска и каталога.
Параметр /D используется для одновременной смены текущих диска и каталога.
Изменение команды CHDIR при включении расширенной обработки команд:
Имя текущего каталога в строке вызова преобразуется к тому же регистру
символов, что и для существующих имен на диске. Так, команда CD C:\TEMP
или cd c:\temp на самом деле сделает текущим каталог C:\Temp, если он существует на диске.
Команда CHDIR перестает рассматривать пробелы как разделители, что позволяет
перейти в подкаталог, имя которого содержит пробелы, не заключая все имя
каталога в кавычки. Например:
приводит к тому же результату, что и:
При отключении расширенной обработки команд нужно использовать путь, заключенный в двойные кавычки.
CD /D X:\data – сделать текущим каталог data на диске X: . Результат использование ключа /D зависит от версии команды. Для того чтобы сменить текущий каталог, на каталог, размещенный на другом диске, надежнее использовать последовательность команд смены текущего диска и смены каталога:
X: – сделать текущим диском диск X:
CD X:\DATA – сделать текущим каталогом X:\DATA
CD %WINDIR% – сделать текущим каталогом каталог, каталог, задаваемый значением
переменной среды %WINDIR% (каталог Windows) . При использовании переменных, желательно их имена заключать в двойные кавычки, поскольку принимаемые значения могут содержать пробелы:
CD “%TEMP%”
CD C:\ – перейти в корневой каталог диска C: . Если в параметре команды задан путь без указания диска, по предполагается, что переход выполняется в каталог, расположенный относительно текущего на данный момент времени :
CD system32 – перейти в каталог system32, являющийся подкаталогом текущего каталога
CD .. – если вместо имени каталога заданы две точки, то будет выполнен переход в родительский каталог ( на один уровень вверх).
Весь список команд CMD Windows
Командная строка Windows является стандартным средством диагностики, настройки и управления компонентами операционной системы и прикладным программным обеспечением. В отличие от графической среды пользователя, командная строка является более гибким и универсальным инструментом, позволяющим решать многие задачи администрирования системы стандартными средствами Windows без установки дополнительного программного обеспечения.
Способы запуска командной строки
Ссылки на материалы по настройке командной строки и приемах работы с ней размещены в конце страницы.
Справочник по командам CMD Windows
Данная страница представляет собой самый полный документ в русскоязычном сегменте Интернет, содержащий список команд командной строки всех версий Windows. Наименования подавляющего большинства команд являются ссылками и ведут на страницы с подробным их описанием и примерами использования. В разных версиях ОС семейства Windows набор поддерживаемых команд, их параметры командной строки, синтаксис и отображение результатов выполнения могут различаться. Одна и та же утилита командной строки может присутствовать в стандартной поставке одной версии Windows, но отсутствовать в другой, или входить в состав дополнительных средств, как например, Resource Kit или Software Development Kit.
На данной странице представлено описание не только внутренних команд CMD, но и стандартных утилит командной строки, входящих в состав конкретных версии операционной системы (ОС) семейства Windows. Некоторые из приведенных команд устарели, и больше не поддерживаются разработчиком или не имеют смысла в современных операционных системах, что отмечается в описании команды.
Список команд постоянно обновляется и включает в себя все новейшие команды, добавляемые в стандартную поставку при выходе новых версий или обновлений ОС Windows 11.
APPEND – позволяет программам открывать файлы данных из указанных
папок так, как будто они находятся в текущей папке.
ARP – просмотр и изменение таблиц ARP (Address Resolution Protocol)
ASSOC – просмотр или изменение сопоставлений расширений файлов приложениям
AT – управление планировщиком задач
ATTRIB – изменение атрибутов файлов
Auditpol – управление политиками аудита.
BASH – командная оболочка BASH в подсистеме Windows для Linux (WSL).
BCDBOOT – копирование в системный раздел файлов загрузки и создание
нового хранилища конфигурации загрузки (BCD)
BCDEDIT – редактирование хранилища данных конфигурации загрузки (BCD)
BOOTCFG – редактирование параметров загрузки в файле boot.ini
BOOTIM – вызов меню загрузки и восстановления (Выбор действия) Windows 10
BOOTREC – восстановление загрузочных записей и конфигурации загрузки Windows
BOOTSECT – редактирование загрузочных секторов для обеспечения загрузки NTLDR или BOOTMGR
BREAK – включить или выключить обработку комбинации клавиш CTRL+C в DOS
CACLS – редактирование списков управления доступом к файлам (ACL – Access Control List)
CALL – вызов из командного файла подпрограмм или других командных файлов
CD – смена каталога (Change Directory)
CHGLOGON – изменение настроек сервера терминалов, аналогично CHANGE LOGON
CHGPORT – изменение настроек сервера терминалов, аналогично CHANGE PORT
CHCP – просмотр или изменение текущей кодовой страницы
CHKDSK – проверка диска (Check Disk)
CheckNetIsolation – управление доступом приложений к интерфейсу замыкания на себя (localhost) в Windows 10
CHKNTFS – проверка признака ошибки файловой системы и управление проверкой диска при загрузке Windows
CHOICE – реализация пользовательского ввода в командном файле
CIPHER – отображение или изменение шифрования файлов на томах NTFS
CLEARMGR – управление очисткой дисков Windows
CLIP – перенаправление вывода утилит командной строки в буфер обмена Windows
CLS – очистка экрана в командной строке
CMD – запуск новой копии интерпретатора командной строки
CMDKEY – создание, отображение, удаление и сохранение имен пользователей и паролей
COLOR – изменение цвета текста и фона в окне CMD
COMMAND – запуск новой копии интерпретатора командной строки MS-DOS
COMP – сравнение содержимого файлов
COMPACT – управление сжатием и распаковкой файлов в разделах NTFS
CONVERT – преобразование файловой системы из FAT в NTFS
COPY – копирование файлов и каталогов
Cscript – сервер сценариев Windows с консольным интерфейсом
DATE – отображение или изменение даты
DEBUG – запуск отладчика DOS-Windows XP
DEFRAG – дефрагментация диска
DEL – удаление одного или нескольких файлов
DevCon – управление устройствами в командной строке
DIANTZ — тоже что и MAKECAB, создание архивов .cab.
DIR – отображение списка файлов и каталогов
DISKCOMP – сравнение содержимого двух гибких дисков
DISKCOPY – копирование содержимого одного гибкого диска на другой
DISKPART – управление разделами и дисками из командной строки
DISM – управление компонентами образрв WIM.
DISPDIAG – вывод дампов с диагностической информацией о графической подсистеме.
DJOIN – автономное присоединение компьютера к домену.
DOSKEY – редактирование и повторный вызов команд Windows, создание макросов DOSKey
DRIVERQUERY – отобразить информацию об установленных драйверах.
DxDiag – средство диагностики DirectX.
EDIT – запуск текстового редактора
ENDLOCAL – конец локальных изменений переменных окружения в командном файле
ERASE – аналогично команде DEL – удаление файлов
ESENTUTL – обслуживание баз данных Extensible Storage Engine для Windows
EVENTCREATE – запись сообщения в журнал событий Windows
EXIT – выход из процедуры или командного файла
EXPAND – распаковка сжатых файлов CAB-файлов.
EXTRACT – извлечение содержимого, распаковка CAB-файлов в Windows (EXTRAC32)
FC – сравнение содержимого файлов
FIND – поиск строки символов в файле
FINDSTR – поиск строк в файлах с использованием регулярных выражений
FOR – организация циклической обработки результатов выполнения других команд, списков, и строк в текстовых файлах
FORFILES – выполнение указанной команды для каждого файла из заданной группы
FORMAT – форматирование диска
FSUTIL – управление файловой системой
FTP – консольный FTP-клиент
FTYPE – просмотр и изменение расширений файлов и сопоставленных им приложений
GETMAC – отображение физического адреса сетевого адаптера (MAC-адреса)
GOTO – команда безусловного перехода в командном файле
GPRESULT – отображение результирующей политики (RSoP)
GPUPDATE – обновление групповых политик.
HELP – вызов справки командной строки Windows
HOSTNAME – отображение имени компьютера
iCACLS – управление списками доступа (ACL)
IF – оператор условного выполнения команд в пакетном файле
IPCONFIG просмотр и управление конфигурацией протокола IP
LABEL – редактирование меток тома дисков
LicensingDiag – диагностика лицензирования Windows 10 и старше
LOGMAN – управление монитором оценки производительности системы
LOGOFF – завершение сеанса пользователя
MAKECAB – создание сжатых файлов формата CAB
MBR2GPT – преобразование дисков MBR в GPT
MEM – вывод справки об использовании памяти в MS-DOS
MD – создание нового каталога
MKLINK – создание символической ссылки на файл или каталог
MODE – конфигурирование системных устройств в среде CMD
MORE – постраничный вывод в консоли
MOUNTVOL – управление точками монтирования томов
MOVE – перемещение файлов и каталогов
MOVEFILE – перемещение или удаление занятых файлов при следующей перезагрузке
MSG – отправка сообщений пользователям.
MSTSC – подключение к удаленному рабочему столу.
NBTSTAT – просмотр статистических данных NETBIOS через TCP/IP (NetBT)
NET – управление ресурсами локальной сети
NETCFG – отображение и изменение конфигурации компонентов сети
NETSH – командная сетевая оболочка (Network Shell)
NETSTAT – отображение статистики сетевых соединений
NSLOOKUP
OPENFILES – управление открытыми по сети или локально файлами
PATH – отображение или изменение путей поиска исполняемых файлов
PATHPING – трассировка маршрута с возможностью оценки качества участков трассы
PAUSE – пауза при выполнении командного файла
PING утилита проверки доступности узла
PKGMGR – управление программными пакетами Windows
PNPUTIL – конфигурирование драйверов устройств PnP
POPD – возврат в каталог, ранее запомненный с помощью команды PUSHD
POWERCFG – настройка параметров системы электропитания Windows
PowerShell_ISE – запуск интегрированной среды разработки сценариев PowerShell
PRINT – печать текстового файла
PROMPT – изменение строки приглашения в консоли
PUSHD – сохранить текущий путь каталога и перейти в указанный
PSR – записать действия пользователя в Windows 7/8.1/10 (Problem Steps Recorder)
QPROCESS – отобразить состояние процессов
QUERY – опросить состояние процессов и сеансов пользователей
RASDIAL – управление сеансами удаленного доступа
RASPHONE – управление сеансами удаленного доступа
RD – удаление каталога
REAGENTC – адимнистрирование стреды восстановления Windows
RECOVER – восстановление файлов на поврежденном диске
REG – утилита командной строки для работы с реестром Windows
REGEDIT – импорт и экспорт данных реестра Windows
REGSVR32 – регистрация или отмена регистрации DLL
REGINI – управление доступом к разделам реестра
RENAME (REN) – переименование файлов
REPLACE – замена или добавление файлов в катологах
RESET – сброс сеанса удаленного рабочего стола (RDP сессии)
RMDIR – удаление каталога
ROBOCOPY – утилита резервного копирования и синхронизации каталогов (Robust File and Folder Copy)
ROUTE – управление таблицей маршрутизации
RUNAS – запуск приложения от имени другого пользователя
RUNDLL32 – запуск DLL в качестве приложения
SC – управление службами Windows (Service Control)
SCHTASKS – управление планировщиком задач
SCLIST – отображение списка системных служб
ScriptRunner – запуск одного или нескольких скриптов в Windows 10
SET – отображение и изменение переменных среды окружения Windows
SETLOCAL – установка локальных переменных в командном файле
SETX – утилита для создания системных переменных
SFC – проверка и восстановление системных файлов Windows
SHIFT сдвиг входных параметров для командного файла
SHUTDOWN – выключение или перезагрузка компьютера
SLEEP – задержка по времени в пакетном файле
SLMGR – управление лицензированием программного обеспечения Windows
SORT – сортировка строк в текстовом файле
START – запуск приложения или командного файла
STORDIAG – диагностика системы хранения данных в Windows 10
SUBST – назначение (отмена назначения) каталогу буквы диска
SxSTrace – диагностическое средство трассировки компонент системы
SYSTEMINFO – отображение информации о системе
TAKEOWN – изменение владельца файла или каталога
TAR – архивирование данных архиватором tar в Windows 10
TASKKILL – завершение процессов на локальной или удаленной системе.
TASKLIST – отображение списка выполняющихся приложений и служб Windows
TIME – отображение и установка системного времени
TELNET – telnet-клиент Windows
TFTP – TFTP-клиент Windows
TIMEOUT – задержка в пакетных файлах
TITLE – изменение заголовка окна CMD.EXE
TRACERT – трассировка маршрута к удаленному узлу
TREE – отображение структуры каталога в графическом виде
TSCON – подключение к сессии удаленного рабочего стола (RDP).
TSDISCON – отключение сессии удаленного рабочего стола (RDP).
TSKILL – завершение процессов, адаптированное для среды сервера терминалов (RDP).
TYPE – вывод на экран содержимого текстового файла
TypePerf – вывод сведений о производительности на экран или в журнал
TZUTIL – управление часовыми поясами в среде Windows
VaultCmd – администрирование учетных данных Windows.
VER – отображение версии операционной системы
VERIFIER – тестирование драйверов Windows.
VERIFY – управление режимом проверки записываемых файлов
VOL – вывод данных метки тома
W32TM – управление службой времени Windows
WAITFOR – организация обмена сигналами между компьютерами
WEVTUTIL – управление событиями в Windows
WHERE – определение места расположения файлов
WHOAMI – вывод имени текущего пользователя
WINDIFF – сравнение содержимого файлов
Winget – установка, обновление, перенос и удаление приложений в Windows 10 и более поздних версий.
WinMgmt – обслуживание инструментария управления Windows (WMI)
WINRM – удаленное управление Windows из командной строки
WINRS – удаленная командная строка (Remote Shell)
WINSAT – средство проверки производительности Windows
WMIC – выполнение команды WMI в командной строке
WSCollect – получить CAB-файл с копиями журналов Windows 10 на рабочем столе
Wscript – сервер сценариев Windows с графическим интерфейсом
WSL – выполнение команд Linux и конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10
WSLconfig – конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10
WUSA – автономная установка обновлений Windows
XCOPY – копирование файлов и папок
Прочие материалы по работе с командной строкой Windows:
Настройка командной строки
Windows.
Работа с командной строкой Windows
Командные файлы Windows
Запуск приложений от имени администратора без запроса UAC
Работа с сетью в командной строке.
Подсистема Linux в Windows 10
В начало страницы |
На главную страницу сайта
Чтобы запустить командную строку на винде, есть 2 основных способа:
- Пуск → cmd.exe
- Run (кнопка с картинкой винды + R) → cmd
Как перейти в другую директорию
cd <путь к директории>
По абсолютному пути
Можно перейти в директорию в привычных папках и скопировать полный путь. Например, нам нужно в папку C:\photo\city. Копируем путь к ней:
Вставляем в командную строку
По относительному пути
Относительный путь — относительно вашей текущей директории, где вы сейчас находитесь. Если я уже нахожусь в C:\photo\city, а мне надо в C:\photo\city\msk, команда будут такой:
Если мне из надо из C:\photo\city в C:\photo\city\msk\2017\cat_1, команда будет такой:
Я не пишу C:\photo\city, так как я уже там.
С автодополнением
Если вы начнете набирать название папки и нажмете Tab, система сама его подставит. Если просто нажмете Tab, ничего не вводя, система начнет перебирать возможные варианты:
— (cd <tab>) Может, ты имел в виду папку 1?
— (<tab>) Нет? Может, папку 2?
— (<tab>) Снова нет? Может, папку 3?
— (<tab>) Снова нет? Может, файл 1 (она перебирает имена всех файлов и директорий, которые есть в той, где вы сейчас находитесь)?
— (<tab>) У меня кончились варианты, поехали сначала. Папка 1?
— система перебирает все файлы / папки в текущей директории.
Это очень удобно, когда перемещаешься в командной строке. Не надо вспоминать точное название папки, но можно вспомнить первую букву-две, это сократит количество вариантов.
Подняться наверх
Подняться на уровень выше:
Если нужно поднять на два уровня выше, то
И так до бесконечности ![]()
Можно использовать файл, лежащий на уровне выше или перейти оттуда в другую папку. Посмотрим на примере. В C:\photo\city\ у нас 2 папки: msk и long-long-long-long-name-folder
Изменить диск. Как перейти из C:\ в D:\
Чтобы изменить диск, напишите его название и двоеточие, без «cd»
Система перейдет на диск D:\. А как перемещаться дальше, вы уже знаете!

Если вы сначала сделали cd, то после изменения диска вы попадете туда, куда собирались исходно:

Ну и пока это все, что вам надо знать ![]()
PS — это выдержка из моей книги для начинающих тестировщиков, написана в помощь студентам моих курсов:
Особенно актуальна, конечно, новичкам. Они ведь часто с командной строкой вообще не сталкивались, а мы в школе изучаем PICT, allpairs и даже будем выкачивать код из Mercurial, ну как тут без командной строки обойтись?
Для того, чтобы открыть папку или перейти в какой-либо локальный диск, пользователи зачастую использую Проводник или файловой менеджер, такой как Total Commander, Norton Commander или Far Manager. Однако бывают случаи, когда открыть стандартным способом директорию или диск невозможно. В таком случае на помощь приходит командная строка.
Команды для открытия папки или диска через командную строку?
Для открытия директории и диска в консоли используется специальная команда «change directory», которая применяется не только в DOS и Windows, но также и в консоли Unix и других операционных системах.
На практике команды для командной строки будут выглядеть следующим способом:
- cd User, где cd – change directory, а User – название папки.

- Если нужно вернуться или перейти по древу на позицию (папку) выше, то нужно ввести cd .. (две точки).

Для того, чтобы перейти в другой диск, то команды будут следующими (выполняется с параметром D)
- cd /D d:\softik, где – cd /D – это обязательная команда на переход, d: – это диск, а \softik – папка на нужном диске.

- Если просто ввести букву и двоеточие, то также можно перейти в нужный диск.

- Далее просто вводим название директории с приставкой cd.

Это только стандартные команды для открытия папок и дисков. Запуск exe файлов в открытых директориях можно выполнить командой start.
Командная строка представляет собой программное средство ввода команд пользователем и получения результатов их выполнения на экране. В современных операционных системах семейства Windows, командную строку обеспечивает стандартное приложение cmd.exe, так же называемое командным процессором, интерпретатором команд и консолью. Приложение ”Командная строка” предоставляет пользователю текстовый интерфейс для ввода команд и получения результатов их выполнения. Фактически, командная строка является программным эмулятором классической консоли первых компьютерных систем, представляющей собой терминал с клавиатурой, используемый оператором в качестве средства общения с компьютером. Как и во времена первых компьютеров, командная строка поддерживает стандартное устройство ввода – клавиатуру, и стандартное устройство вывода – дисплей. Пользователь вводит команды с клавиатуры и получает результаты их выполнения на экране дисплея.
Запуск командной строки.
Для запуска командной строки можно воспользоваться одним из следующих способов:
Пуск – Выполнить (или клавиши Win+R) введите cmd и нажмите клавишу Enter;
Пуск – Все программы – Стандартные – Командная строка»;
Пуск – Поиск – Командная строка.
Также, для запуска командной строки можно использовать заранее подготовленный ярлык, ссылающийся на исполняемый файл %SystemRoot%\system32\cmd.exe ( обычно – C:\Windows\system32\cmd.exe). Выполнение некоторых команд требует повышенных привилегий, поэтому, приложение командной строки должно быть запущено с использованием пункта контекстного меню ”Запуск от имени администратора”, вызываемого правой кнопкой мышки.




