Как «приручить» консоль, или 5 шагов к жизни с командной строкой / Хабр

Основные функции

У вас может возникнуть вопрос «зачем нужна КС в современных системах, если я могу выполнить требуемые задачи через окна и программный интерфейс»? Терминал применяется по сей день, потому что:

  • Расходует меньше памяти, чем системное меню.
  • Позволяет управлять утилитами, которые, к примеру, не открываются обычным способом из-за сбоя системы или по другим причинам.
  • Дает возможность работать с машинами, вовсе не имеющими графического интерфейса, к примеру, с выделенными серверами.
  • Увеличивает возможности в работе с программами. Нынешнее ПО предполагает множество команд, и немалая часть из них используется крайне редко. Поэтому даже те проги, которые реализованы через графический интерфейс, могут выполнять некоторые задачи и через консоль. Такая практика ведется потому, что ввести команду, если вы ее знаете, гораздо быстрее, чем искать нужную настройку в дебрях графического меню.
  • Имеет расширение — пакетный интерфейс. В обычный текстовый файл записывается набор команд в определенной последовательности для выполнения ряда задач. Когда это потребуется, вы просто открываете данный файл через терминал. То есть вам не приходится тратить время на ввод каждой команды вручную.

Fish по умолчанию

Закройте терминал и откройте его заново. Вы окажетесь не в fish, а в командной оболочке по умолчанию. Есть два варианта, как сделать так, чтобы открывался fish:

  1. Назначить fish командной оболочкой по умолчанию.

    Нужно учитывать, что скрипты инициализации текущей командной оболочки не будут выполняться. Команды и переменные окружения из .bashrc, .bash_profile, .zshrc и т.д, нужно переместить в .config/fish/fish.config , а затем адаптировать под синтаксис fish.

  2. Использовать fish только как интерактивную оболочку.

    Это более безболезненный способ, потому что не нужно мигрировать скрипты и переменные окружения. В конце скрипта инициализации текущей командной оболочки нужно запустить fish. Добавьте строку exec fish в файл .bash_profile, если у вас bash или в .zshrc, если zsh. Эти файлы находятся в корневой директории пользователя.

    На ArchWIki есть более подробное описание этого и еще нескольких способов.

Wildcards

В fish, как и в bash, есть поддержка wildcards. Wildcards позволяют выполнить команду для нескольких файлов.

Выводим все файлы с расширением .md в текущей папке
Выводим все файлы с расширением .md в текущей папке

* — соответствует любой строке ** — соответствует любой иерархии папок, то есть рекурсивно заходит во вложенные папки

Применим wildcard, чтобы скопировать все файлы apk после сборки в папку output:

Автодополнение

Начните писать любую команду и нажмите Tab, не дописывая её до конца. Попробуйте с командой git config:

Дополнение работает с командами, подкомандами и аргументами. Вместе с вариантами дополнения выводится описание подкоманд из документации.

Если утилита не поддерживает автодополнение, fish умеет создавать дополнения из документации man. Для этого нужно выполнить команду fish_update_completions.

А что с путями? Например, хотим перейти в папку dev/tools/jarjar/:

Дополнение путей тоже работает на Tab. Для перехода по пути не обязательно писать команду cd в начале. А еще работает дополнение, если написать первую букву имени каждой папки в пути. Если указан несуществующий путь, он подсвечивается красным.

Сложно запомнить все нужные флаги у команд. Хочу вывести дерево файлов, но не помню, как ограничить его глубину и сделать так, чтобы вывод был цветным. Для такого случая есть Shift Tab — дополнение с поиском:

Автодополнение может сработать в самых неожиданных местах, например, так работает автодополнение для команды kill:

Убийство Android Studio на глазах у studentd
Убийство Android Studio на глазах у studentd

Востребованные сетевые команды командной строки

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

Команда ping

Наверное, это самая популярная команда среди пользователей ОС Windows (как, впрочем, и других операционных систем). Предназначена она для проверки доступности и качества связи между компьютером и целевым IP-адресом. Также команда может применяться для определения IP-адреса сайта по доменному имени сайта и для выполнения других задач.

Определим, есть ли связь с каким-нибудь IP-адресом. Пусть это будет — 173.194.73.139 (IP-адрес поисковой системы Google). Вводим следующую команду:

ping 173.194.73.139

Как видим, обмен пакетами с указанным IP-адресом осуществляется, значит, связь есть. Если бы ее не было, картина была бы следующая (уберем из IP Google последнюю цифру):

“100% потерь” означает, что связь установить не удалось.

Зачем вообще использовать командную строку

Дисклеймер: Я не призываю использовать только командную строку и отказаться от графического интерфейса. Нужно просто учитывать командную строку при выборе инструмента для решения задачи.

Когда хотят рассказать чем же хорош CLI, выделяют разные преимущества перед GUI:

Меня как разработчика больше всего впечатляет, как можно комбинировать CLI утилиты. Текст — интерфейс общения, который понятен для всех утилит с командным интерфейсом. Утилиты принимают на вход текст и возвращают тоже текст. Это один из принципов Unix, которые сформулировал Дуглас Макилрой в 1978 году:

Пишите программы, которые делают одну вещь и делают её хорошо.

Пишите программы, которые бы работали вместе.

Пишите программы, которые поддерживают текстовые потоки, потому что это универсальный интерфейс.

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

Зачем нужна командная строка

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

Таким является заражение компьютерными вирусами, которые блокируют графический интерфейс и не дают выполнять никаких действий. К ним относятся распространённые случаи блокировки компьютера с требованием перечислить определённую сумму на счёт злоумышленников. Зная, как вызвать CMD и что в ней вводить, справится с ними дело нескольких минут.

Другой случай — это повреждение системных файлов или же части винчестера. В таком случае скопировать важные данные помогут именно команды в CMD.

Как вызвать консоль?

Запустить консоль предельно просто: в Windows вы можете отыскать ее по такому пути «Пуск — Все программы — Стандартные» либо через поиск в том же меню Пуск.

Также можно открыть ее через «Выполнить»: зажимаете Win R, в появившемся окошке вписываете буквы cmd и нажимаете «OK».

Чтобы открыть терминал от имени администратора, щелкните по нему правой кнопкой мыши и выберите соответствующий пункт.

Черный экран с белым текстом, который вы увидите перед собой — это и есть КС. Кстати, текст может отличаться в зависимости от настроек, местонахождения ОС на жестком диске, ее версии и способа запуска самой строчки.

Что он значит? Текст отображает адрес, по которому вы находитесь в Проводнике. Он имеет значение при выполнении определенных команд. Видите в конце этого адреса знак «>» и мигающий курсор? Это значит, что терминал готов получить от вас команду.

Как запустить командную строку на windows

Для того, чтобы начать работать с командной строкой на Windows, необходимо для начала ее найти. В Windows 7 и Windows 10 это можно сделать несколькими популярными способами.

Способ 1. Нажимаем комбинацию клавиш на клавиатуре «Win» «R»Как начать пользоваться "командная строка Windows"?cmdпользоваться командная строка Windows

После чего будет запущена командная строка Windows.

Способ 2. В пуске написать команду CMD или «командная строка» и выбрать иконку программу.

Если необходим запуск от имени администратора, сделать клик правой кнопкой мыши по файлу cmd и выбрать «Запуск от имени администратора».пользоваться командная строка Windows

Как пользоваться командной строкой?

На месте курсора вы можете прописывать команды. Но какие и как? Чтобы увидеть стандартные и наиболее востребованные команды в Виндовс, впишите сначала слово help и нажмите Enter. Перед вами появится список команд. Просмотрите его — может, найдете что-то полезное для себя. Для получения дополнительных сведений о той или иной команде, нужно повторно ввести help и ее имя.

Обратите внимание, что в конце этого списка у вас снова мигает курсор. Он указывает на то, что вы можете задать другую команду, не перезапуская это окно. Чтобы вы лучше понимали механизм действия консоли, в качестве эксперимента напишите слово notepad и снова нажмите кнопку ввода. Запустится блокнот.

Таким способом можно открыть любую программу. Для этого следует вводить полный путь к ее месторасположению. Если он содержит пробелы, то команда должна быть помещена в кавычки, например, «C:Program FilesMozilla Firefoxfirefox.exe».

Как работать с командной строкой windows?

Чтобы вывести весь список команд в cmd напишите команду «HELP» чтобы вывести весь список команд.пользоваться командная строка Windows

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

Давайте создадим пустой файл в какой-то папке. Для этого вам будет необходимо выполнить следующие действия:

  1. Понять где вы находитесь, после запуска командной строки
  2. Перейти в необходимую папку
  3. Создать файл

После запуска CMD, вы автоматически оказываетесь в папке C:WINDOWSsystem32>

Контролировать местоположение, где вы находитесь, вам поможет информация слева, до мерцающего курсора, отображая расположение папки.Как начать пользоваться "командная строка Windows"?

 Для того, чтобы перемещаться между папками существует

команда CD

Для перехода в корень диска С: вам понадобиться набрать команду:

cd С:пользоваться командная строка Windows

Если вы находитесь рядом с той папкой что вам необходима, то можете написать ее название.

Например, я уже в корне диска С: и мне необходимо перейти в папку adb_run, то я пишу команду:

cd adb_run

Чтобы узнать о том какие рядом папки есть, мне поможет команда dir.пользоваться командная строка Windows

Если же мне из папки С:adb_run необходимо перейти в папку C:WINDOWSsystem32> мне придется писать весь полный путь:

cd C:WINDOWSsystem32

Чтобы быстрей писать путь лучше использовать кнопку TAB, которая до заполняет название папок.Как начать пользоваться "командная строка Windows"?

То есть чтобы мне перейти в папку C:WINDOWSsystem32 я писал команду так:

cd C:Win кнопка TAB system3 кнопка TAB

И мне не пришлось печатать много букв, сработало автозаполнение.

Для того, чтобы мне выйти из папки system32 (C:WINDOWSsystem32) в папку Windows необходимо набрать команду cd..

Как вы поняли, команда cd .. — это аналог кнопки «назад», точней перейти на папку выше.

Для особо ленивых можно набрать команду cd, пробел, и в заголовке окна скопировать адрес папки и вставить в командную строку и нажать «Enter».Как начать пользоваться "командная строка Windows"?

:/>  Как почистить и разгрузить оперативную память компьютера на Windows 7: вручную и при помощи программ

Надеюсь вы разобрались, теперь я создам папку в корне диска С: с помощью команды mkdir. Если я только что запустил командную строку, то это будет выглядеть так:

cd C:
mkdir Hello

То есть, я сначала перешел в диск C, а потом создал папку Hello. Можно было сделать так:

mkdir C:Hello

Я не стал переходить куда мне нужно, а сразу указал путь, где необходимо создать папку.

Проверяем создалась ли папка с помощью команды dir, и да, у меня все получилось!Как начать пользоваться "командная строка Windows"?

Предположим в папке что мы создали Hello есть консольная утилита adb.exe. Как ее запустить?

Очень просто!

Переходим в папку Hello

cd C:Hello

убеждаемся что adb.exe находиться в этой папке

dir

и запускаем adb

adb.exe

Если я вдруг захочу удалить файл adb.exe мне придется набрать команду del:

del adb.exe

Если я нахожусь в папке Hello.Как начать пользоваться "командная строка Windows"?

Или же:

del C:Helloadb.exe

Если в любой другой папке.

Только что я вам рассказал о базовой работе c командной строкой Windows. Возможно, вам показалось это весьма долгим и унылым занятием, но в ближайшем будущем я вас научу составлять скрипты, так называемые «батники», которые взаимодействуют с cmd и существенно ускорят работу за компьютером или автоматизирует некоторые действия!

У вас еще остались дополнительные вопросы? Задавайте их в комментариях, рассказывайте о том, что у вас получилось или наоборот!

Вот и все! Оставайтесь вместе с сайтом Android 1, дальше будет еще интересней! Больше статей и инструкций читайте в разделе Статьи и Хаки Windows.

Команда автозагрузки в командной строке

Как и в приведённом выше примере, команд, которые бы позволяли просматривать и редактировать список автозагрузки, в командной строке нет. Однако через CMD вызывается утилита msconfig, которая и позволяет это сделать. Проверять автозагрузку необходимо периодически и отключать не нужные вам программы, а также подозрительные, похожие на вирусы.

В появившемся окне вы можете проконтролировать не только программы, но и службы, которые работают на вашем компьютере, нередко проблемы скрываются в них. Отключив все ненужное, вы значительно увеличите скорость работы компьютера.

Командная строка (cmd) windows и её команды (параметры)

Что такое командная строка?

Командная строка windows – это отдельное ПО, которое входит в состав Операционной Системы и обеспечивает взаимосвязь между пользователем и ОС. С её помощью можно производить команды MS-DOS и других компьютерных команд. Основное преимущество командной строки состоит в том, что она позволяет вводить все команды без участия графического интерфейса, который намного быстрее и имеет массу дополнительных возможностей, которые не могут быть осуществлены в графическом интерфейсе.

Командная строка запускается в своей оболочке и предназначена для более опытных пользователей и помогает в таких сложных ситуациях, когда другие команды уже не работают. Например, через командную строку вводят команды в случае заражения вирусами или “поломки” системных файлов, а так же восстановление windows.

Где находится командная строка?

Основной файл командной строки – консоль cmd.exe переводящий команды пользователя в понятный системе вид, находится в папке с установленной ОС по пути: {буква_системного_диска}:WINDOWSsystem32cmd.exe

Как запустить / открыть / вызвать командную строку?

Данные методы запуска командный строки актуальны для всех версий, в том числе и тех, которые я рассматриваю на своем сайте – windows XP , 7 , 8

1) Пуск – Все программы – Стандартные – Командная строка

2) Пуск – Выполнить – вводим cmd.exe

3) сочетание клавиш Win R – вводим cmd

4) Запуск из системной папки: {буква_системного_диска}:WINDOWSsystem32cmd.exe

Для того, чтобы запустить командную строку от имени Администратора, подойдет 1 и 4 способ, нужно на ярлыке щёлкнуть ПКМ и выбрать в меню “Запуск от имени Администратора”.

в этом случае вверху окна будет значится

Администратор:

командная строка (путь).

Команды / параметры / ключи командной строки.
Узнать команды командной строки можно прям в ней же, набрав help и нажав клавишу Enter (после окончания ввода всех команд нужно использовать именно Enter (ВВОД) ).

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

Ниже, под спойлером, я собрал

список команд командной строки (CMD) и их описание

.

append – позволяет программам открывать файлы в указанных каталогах так , будто они находятся в текущем каталоге
arp – отображение и изменение таблиц преобразования IP-адресов в физические, используемые протоколом разрешения адресов
at – запуск программ в указанное время
atmsdm – контроль подключений и адресов, зарегистрированных диспетчером вызовов ATM в сетях с асинхронным режимом передачи (ATM).
attrib – изменение атрибутов файлов и папок
auditusr – задаёт политику аудита пользователей
assoc – вывод, либо изменение, сопоставлений по расширениям имён файлов
break – включение режима обработки клавиш CTRL C
blastcln – утилита очистки от червей
bootcfg – может быть использована для настройки, извлечения, изменения или удаления параматров командной строки в файле Boot.ini
call – вызов одного пакетного файла из другого
cacls – просмотр изменение таблиц управления доступом ACL к файлам
cd – вывод имени, либо изменение текущей папки
chcp – вывод, либо изменение активной кодовой страницы
chdir – вывод, либо смена текущей папки
copy – копирование одного или нескольких файлов
cls – очистка экрана
chkdsk – проверка диска и вывод отчёта
chkntfs – выводит или изменяет параметры проверки диска во время загрузки
ciddaemon – сервис индексации файлов
cipher – программа шифрования файлов
comp – сравнение содержимого двух файлов или наборов файлов
compact – просмотр и изменение параметров сжатия файлов в разделах NTFS
convert – преобразование файловой системы тома FAT в NTFS
date – вывод, либо установка текущей даты
del – удаление одного или нескольких файлов
dir – вывод списка файлов и подпапок из указанной папки
diskcopy – копирование содержимого одного гибкого диска на другой
diskcomp – сравнение содержимого двух гибких дисков
debug – средство отладки и редактирования программ
defrag – дефрагментатор
devcon – это программа с интерфейсом командной строки, которая используется в качестве альтернативы диспетчеру устройств. С ее помощью можно включать, выключать, перезапускать, обновлять, удалять и опрашивать отдельные устройства или группы устройств. Программа DevCon также предоставляет необходимые разработчику драйвера сведения, которые недоступны с помощью диспетчера устройств.
diantz – cссылка на программу makecab.exe.
diskpart – использования сценария diskpart
diskperf – счётчик производительности
doskey – редактирование и повторный вызов команд windows xp , создание макросов driverquery – просмотр списка установленных драйверов устройств и их свойства
edlin – запуск построчного текстового редактора
echo – вывод сообщений и переключение режима отображения команд на экране
endlocal – конец локальных изменений среды для пакетного файла
erase – удаление одного или нескольких файлов
esentutl – maintance utilities for microsoft windows databases
eventcreate – позволяет создать запись об основном событии в журнале событий
eventtriggers – позволяет настроить триггеры событий в локальной или удалённой системе
exe2bin – преобразование exe в двоичный формат
expand – распаковка сжатых файлов
fc – сравнение файлов и вывод различий между ними
for – запуск указанной команды для каждого файла в наборе
format – форматирование диска
ftype – вывод, либо изменение типов файлов
find – поиск текстовой строки в одном или нескольких файлах
findstr – поиск строк в файлах
finger – вывод сведений о пользователях указанной системы, на которой запущена служба
fltmc – работа с драйверами фильтров
fontview – программа просмотра шрифтов
forcedos – запуск заданной программы в подсистеме MS-DOS. Эта команда необходима для тех программ MS-DOS, которые не распознаются системой Microsoft Windows XP.
fsutil – служебная программа командной строки, которая используется для выполнения связанных задач файловых систем FAT и NTFS, таких как управление точками повторной обработки, управление разреженными файлами, отключение тома или расширение тома.
ftp – программа передачи файлов
goto – передача управления в указанную строку пакетного файла
graftabl – позволяет windows отображать расширенный набор символов в графическом режиме
getmac – отображает MAC-адрес одного или нескольких сетевых адаптеров
gpresult – отображает результирующую политику RSoP для указанного компьютера
gpupdate – выполнение обновления групповых политик
if – оператор условного выполнения команд в пакетном файле
ipconfig – информация о IP адресе
ipxroute – программа управления маршрутизацией nwlink ipx
label – создание , изменение и удаление меток тома для диска
lodctr – обновление имен счётчиков и поясняющего текста для расширенного счётчика
logman – управление службой “повешения и журналы производительности”
logoff – завершение сеанса
lpq – отображение состояния очереди удалённой очереди печати lpq
lpr – направляет задание печати на сетевой принтер
lsass – сам не пойму для чего )
md – создание папки
mkdir – создать папку
mode – конфигурирование системных устройств
more – последовательный вывод данных по частям размером в один экран
move – перемещение одного или нескольких файлов из одной папки в другую
makecab – архивирует файлы в cab архив
mem – выводит сведения об используемой и свободной памяти
mofcomp – 32-разрядный компилятор
mountvol – создание, просмотр и удаление точек подключения
mqbkup – утилита архивирования и восстановления очереди сообщений
mqsvc – обеспечивает инфраструктуру для работы распределенных приложений, основанных на асинхронных сообщениях. MSMQ
mrinfo – работа с многоадресными рассылками.
msg – отправка сообщений
nbtstat – отображение статистики протокола и текущих подключений tcp/ip с помощью nbt
net – имеет кучу синтаксисов, узнать можно введя net /?
net1 – то же самое что и net
netsh – тоже много синтаксисов
netstat – отображение статистики протоколов и текущих сетевых подключений TCP/IP
nlsfunc – загрузка сведений о национальных стандартах
odbcconf – настройка драйвера ODBC.
openfiles – вывод списка открытых файлов и папок, которые были открыты в системе
path – вывод, либо установка пути поиска исполняемых файлов
popd – восстановление предыдущего значения текущей папки
prompt – изменение приглашения в командной строке
pushd – сохранения значений текущей активной папки и переход к следующей
pathping – программа пингования и поиска пути.
pentnt – обнаруживает ошибки деления с плавающей точкой процессора Pentium, отключает аппаратную обработку чисел с плавающей точкой и включает эмуляции операций с плавающей точкой.
ping – отправка пакетов на указанный адрес
ping6 – команда проверки связи
powercfg – управление электропитанием системы
print – печать текстового файла
proxycfg – инструмент настройки прокси
qappsrv – отображает доступные серверы терминалов в сети
qprocess – отображает информацию о процессах
qwinsta – отображение информации о сеансах терминалов
rd – удаление папки
rem – помещение ремарки в пакетный файл
ren – переименование файлов и папок
rename – переименовать файл или папку
rmdir – удаление папки
rasdial – интерфейс связи из командной строки для клиента службы удалённого доступа
rcp – обмен файлами с компьютером, на котором выполняется служба rcp
recover – восстановление данных на повреждённом диске
reg – служит для работы с реестром
regsvr32 – сервер регистрации
relog – создаёт новый журнал производительности из уже имеющегося, изменяет интервал сбора данных и ещё что то…
replace – замена файлов
reset – утилита сброса служб терминалов
rexec – выполнение команд на удаленных узлах на которых выполняется служба rexec
route – обработка таблиц сетевых маршрутов
rsh – выполнение команд на удалённых узлах на которых запущена служба rsh
runas – использование приложений от имени другого пользователя
rwinsta – сброс значений подсистем оборудования и программ сеанса в начальное состояние
sc – можно узнать где находиться профиль для работы в домене
set – вывод, установка и удаление переменных среды windows
setlocal – начало локальных изменений среды для пакетного файла
shift – изменение содержимого подставляемых параметров для пакетного файла
start – запуск программы или команды в отдельном окне
schtasks – заменяет AT, только чуть получше
sdbinst – установщик базы данных совместимости
setver – задаёт номер версии, который MS-DOS сообщает программе
sfc – проверка всех запущенных системных файлов и замена неправильных версий
shadow – наблюдение за другим сеансом служб терминалов
shutdown – перезагрузка, выключения компьютера и т.п.
smbinst – процесс, принадлежащий System Management BIOS Driver Installer.
sort – программа сортировки
subst – сопоставление имени диска указанному пути
systeminfo – позволяет получить информацию о конфигурации системы
taskkill – принудительное завершение процессов
tasklist – показывает процессы, выполняемые в данный момент
time – просмотр и изменение текущего времени
title – назначение заголовка текущего окна интерпретатора
tree – графическое отображение структуры заданного диска или папке
type – вывод на экране содержимого текстовых файлов
tcmsetup – установка клиента телефонии
tftp – обмен файлами с удалённым компьютером
tlntadmn – без понятия, так и не разобрался
tracerpt – обрабатывает двоичные файлы журнала отслеживания событий или потоки данных в реальном времени от поставщиков отслеживания событий и создаёт отчёт в текстовом файле, с описанием произошедших событий
tracert – трассировка маршрута к указанному узлу
tracert6 – версия tracert для протокола IPv6
tscon – присоединяет сеанс пользователя к сеансу терминала
tsdiscon – отключение сеанса терминала
tskill – прекращение процесса
tsshutdn – завершение работы сервера в установленном порядке
typeperf – выводит сведения о производительности на экран или в журнал
ver – вывод сведений о версии windows
verify – установка режима проверки правильности записи файлов на диск
vol – вывод метки и серийного номера тома для диска
unlodctr – удаление имен счётчиков и поясняющего текста для расширенного счётчика
userinit – является частью операционных систем Windows, отвечая за процесс загрузки системы
vssadmin – инструмент командной строки теневого копирования тома
w32tm – диагностика службы времени
wbemtest – тест инструментария windows
winver – информация о версии windows
wmic – настройка старта сеанса(для продвинутых пользователей, не советую использовать без должного опыта)
xcopy – копирование файлов и дерева папок

:/>  Компьютер не видит загрузочную флешку [РЕШЕНО] 💻

Узнать все параметры для каждой команды в командной строке, можно с помощью команды:

{имя_команды} /?

.

не забудьте про ПРОБЕЛ

Например, я ввел

attrib /?

и

cls /?

и вот что получил:

Так же можно воспользоваться командой:

help имя_команды

, но она не всегда работает

Вдаваться слишком глубоко не буду, потому что для этого лучше писать отдельную статью. Приведу лишь небольшой пример использования командной строки.
Допустим у меня на диске E находится папка 123, а в ней текстовый файл test.txt.
Вот теперь я хочу сделать этот файл скрытым, не заходя на этот диск и не “видя” этого файла с папкой.
Команда, отвечающая за атрибут “Системный” – это attrib. И у неё существуют свои атрибуты (уже команды). Можете даже посмотреть на скрине выше, я там показывал именно её на примере.
Из всех её атрибутов мне нужны только два – это его установка и сам атрибут. За это отвечают и s.
Итак, моя команда будет следующей: attrib s e:/123/test.txt . Вот так будет выглядеть правильный результат:

а так неправильно:

Ой. Только заметил что вместо Скрытый я сделал его Системным, а ещё удивляюсь почему он не пропал в папке. Я специально не стал удалять скрины и редактировать статью для того, чтобы показать Вам как можно исправить такую оплошность (как я сделал). Тоже хорошая информация.

На заметку:
чтобы не вводить каждый раз предыдущие команды заново, просто нажмите кнопку “Вверх” на клавиатуре.

Ну и напоследок:
Как редактировать текст в окне командной строки?
Дело в том, что стандартные методы с помощью сочетаний клавиш Ctrl C и Ctrl V в командной строке не работают.
Тут нужно пользоваться ПКМ – Правой Кнопкой Мыши.
Для того, чтобы вставить текст в командную строку, просто кликаем ПКМ на любом месте командной строки, затем выбираем Вставить.

Для того, чтобы скопировать часть текста из командной строки можно воспользоваться одним из двух методов:
1) ПКМ – Выделить всё
Выделится весь текст, но можете выделить сразу какой Вам угодно, просто как обычно зажав ЛКМ
2) ПКМ – Пометить
Появится мигающий курсор в начале строки, которым можно управлять “стрелочками” на клавиатуре. И при нажатой кнопке shift выделить текст, управляя так же “стрелками” на клавиатуре. Либо выделаем снова с помощью мыши.

Важно! После выделения жать не ПКМ, а Enter

Кстати, кликните ПКМ на заголовке окна командной строки. Вы увидите не совсем обычное меню для окон.

при желании, можете изменить настройки командной строки, выбрав пункт в меню выше “Свойства”

Команды

Через командную строку можно выполнять много задач с папками и файлами. Описывать все я, конечно, не буду.

Как «приручить» консоль, или 5 шагов к жизни с командной строкой / Хабр

Назову только основные команды:

cd — осуществляет переход в указанную папку (cd C:Program Files);
chdir или cd с ключом d — позволяют перейти на другой диск (cd /d i:Games);

dir — отображает содержимое текущей папки;

cls — введите это для очищения окна командной строки;

edit имя файла — позволяет менять содержимое файла;

del имя файла — удаление. Кстати, если вы хотите стереть все файлы определенного формата, то добавьте к этой команде, к примеру, *.doc;

rename, или ren — переименование;

move — перемещение.

Чтобы выполнить копирование, у вас есть несколько вариантов:

copy имя файла имя папки — продублирует файл в уже имеющуюся папку;

copy имя файла новое имя файла — создаст копию файла под другим названием;

copy *.doc Word — скопируют все документы данного формата в папку под названием Word.

Думаю, на первое время этих команд достаточно.

Настройка консоли

Вам кажется, что в терминале нечего настраивать? Ошибаетесь. В левом верхнем углу окна нажмите на иконку консоли и в ниспадающем окне выберите «Свойства».

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

  • Во вкладке «Общие» видите поле «Запоминание команд»? Выставьте в строке «Размер буфера» цифру 999, а в «Количество буферов» — 5.
  • В соседнем поле — «Правка» или «Редактирование» — отметьте галочками обе строки.
  • Перейдите на вкладку «Расположение». В поле «Размер буфера экрана» поднимите значение высоты до 2500.
  • Снимите галочку с пункта «Автоматический выбор» и установите свои параметры положения окна. Если хотите, конечно.

Объединяем команды

Помните, в самом начале я говорил, что консольные команды как «кирпичики» и их можно объединять, чтобы решить более сложную задачу? Сейчас мы этим и займёмся.

Чтобы направить вывод одной команды на вход другой, используется оператор |. Он называется pipe, а на русский его переводят как «конвейер». Если мы хотим подать вывод команды find_bone на вход команде eat, нужно между этими командами поставить «трубу» (pipe):

$ find_bone | eat

Синтаксис понятен, но таких команд не существует и запустить их у себя в консоли не получится. Давайте посмотрим на более реальный пример:

Перезагрузка windows через командную строку

Необходимость перезагрузить компьютер возникает достаточно часто.

Чаще всего это:

  • зависшая операционная система;
  • зависшая программа;
  • повышенная загрузка процессора;
  • заторможенность работы системы;
  • медленная работа интернета.

ВАЖНО. Иногда перезагрузить компьютер проще через командную строку, чем через кнопку «Пуск», которая может быть недоступна. 

Служит для этого команда shutdown. Использовать её необходимо с параметрами запуска, которые дают массу дополнительных возможностей. Без них просто будет выведена справка, в которой вы сможете посмотреть все возможные варианты запуска.

  • /r — Перезагрузка
  • /s — Выключение
  • /a — Остановить выключение
  • /f — Принудительное завершение приложений
  • /t время в миллисекундах — Отложить выключение

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

Плюсы и минусы

К основным функциям стоит добавить и несколько преимуществ консоли:

  • Любая команда вызывается несколькими нажатиями клавиш;
  • Можно просматривать содержимое строки, чтобы напомнить себе, что уже было сделано за сеанс работы или увидеть сообщение, которые вы не заметили изначально.
  • Нет нужды в использовании громоздких утилит.
:/>  Как отключить уведомления на Андроиде

Есть и недостатки:

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

Поиск по истории

Давайте-ка посмотрим, что умеет fish. Если еще не установили, можно попробовать в браузере. Я изменил только цвета и prompt, больше ничего не настраивал.

Когда вы начинаете набирать команду, fish подсказывает команды и аргументы, которые вы использовали раньше. Чтобы применить подсказку нажмите →. Подставить одно слово из подсказки — Ctrl →.

sample_command — это демонстрационная функция. Она принимает любые параметры и ничего не возвращает.

Чтобы ввести предыдущую команду, нажмите клавишу ↑. С помощью клавиш ↑ и ↓ можно перемещаться по истории команд. Если командная строка пуста, команды будут листаться по очереди. Если в командной строке есть текст, то история будет фильтроваться по нему.

Помощь: man, help, tldr

Есть несколько способов получить справку по команде.

man — выводит полную справку:

Если ввести man man, вы получите справку по команде man, где всё это подробно описано.

man — это утилита с TUI, в ней есть горячие клавиши. Для поиска нажмите /, а для выхода q. / и q — стандартные клавиши для поиска и выхода, они работают во многих TUI утилитах. Ещё один стандартная клавиша — ?, она открывает справку.

Можно выполнить команду из man — для этого нажмите ! и введите команду. Хотите открыть man для другой команды внутри man или сразу попробовать выполнить команду, следуя документации? Легко.

Страницы в man пишут разработчики утилит. Если разработчик не написал справку, man выдаст «No manual entry for [command]». Но даже если нет страницы в man можно вывести краткую справку с помощью флага –help. Попробуйте написать man –help.

Для команд fish можно открыть справку в браузере командой help <command>.

Если читать мануалы некогда, то поможет утилита tldr. Она отображает типичные случаи использования команд:

tldr tldr
tldr tldr

Редко используемые, но очень полезные команды

При помощи командной строки можно выполнять различные интересные функции (большинство приведенных ниже команд работает только с правами администратора):

Превращаем ноутбук в Wi-Fi-роутер (включение раздачи интернета с ноутбука или настольного компьютера с Wi-Fi-адаптером)

Для реализации этой затеи нужно поочередно выполнить три несложные команды:

  1. netsh wlan set hostednetwork mode=allow
  2. netsh wlan set hostednetwork mode=allow ssid=MiWiFi key=MiWiFipassword keyUsage=persistent. Вместо MiWiFi и MiWiFipassword можно использовать свои фразы. Первый параметр задает имя беспроводной сети, второй — пароль (должен состоять из 8 символов или более).
  3. netsh wlan start hostednetwork.

Если после выполнения каждой команды вы видите сообщения, аналогичные тем, что приведены на изображении выше, значит, все прошло успешно. Теперь к ноутбуку можно подключиться, например, с телефона так же, как и к обычному Wi-Fi-роутеру.

Удалениям службу Windows (или любую другую) через командную строку

Если попробовать удалить службу через штатное приложение “Службы”, то ничего не получится (в нем попросту не предусмотрено такой функции). Однако это бывает необходимым, особенно после установки различных программ, которые устанавливают службы, но “забывают” их удалять при деинсталляции.

  • Запустите программу “Службы”, используя команду msc.
  • Найдите в отобразившемся списке службу, которую необходимо удалить, и кликните по ней два раза мышкой:
  • Нас интересует текст в блоке “Имя службы”.
  • Теперь вернитесь в окно командной строки и впишите в него команду:

sc delete имя_службы

  • Подставьте вместо фразы “имя_службы” имя удаляемой службы. Если оно содержит пробелы, как в нашем случае, заключите имя службы в кавычки.

Выключаем/перезагружаем/отправляем в сон/гибернацию компьютер с задержкой. Если необходимо выключить, перезагрузить или отправить в сон компьютер с задержкой по времени, не обязательно использовать какие-либо сторонние программы — все можно сделать при помощи командной строки. Для этого достаточно использовать команду:

shutdown /s /t 60 /f

В данном случае компьютер будет выключен (параметр “/s”) через 60 секунд (параметр “/t 60”) с принудительным завершением работы всех приложений без предупреждения пользователя (параметр “/f” — обязательный при использовании таймера “/t”).

Вместо выключения компьютера “/s” использовать:

  • /l — завершение сеанса (выход из учетной записи пользователя с блокировкой, если для входа требуется пароль).
  • /r — перезагрузка компьютера.
  • /hybrid/s — “отправка” компьютера в сон (параметр “/s” использовать обязательно).
  • /h — режим гибернации (или режим максимального энергосбережения, при котором ключевые компоненты компьютера остаются включенными).

Для выключения компьютера, например, через 2 часа следует указывать в параметре “/t” число 7200 (1 час равен 3600 секундам).

Сразу после выполнения команды на экран будет выведено уведомление:

Выполнение команды всегда можно отменить (если была использована задержка), воспользовавшись:

shutdown /a

Просмотр списка запущенных процессов и завершение работы любого из них. Если по каким-то причинам не удается запустить “Диспетчер задач”, но имеется доступ к командной строке, запущенный процесс может быть снят при помощи специальных команд:

  • Сначала выведем на экран список всех запущенных процессов при помощи команды tasklist:
  • Нас интересует идентификатор “PID” завершаемого процесса. Возьмем для примера PID процесс “NVDisplay.Container.exe” — 1100.
  • Для завершения его работы используем команду taskkill /pid 1100 /f (параметр “/f” необходим для принудительного завершения работы процесса).

Чиним интернет при помощи командной строки. Разнообразные неполадки с сетевыми подключениями можно устранить “одним махом” через командную строку путем сброса настроек TCP/IP (не будем вдаваться в подробности, но если вам интересно, об это можно почитать тут — Netsh Winsock — что это и зачем нужно?.

Для выполнения этой задачи нужно поочередно ввести две команды:

netsh int ip reset

netsh winsock reset

Перезагружаем компьютер для применения изменений.

Остались вопросы, предложения или замечания? Свяжитесь с нами и задайте вопрос.

Функции, алиасы и аббревиатуры

Большиство команд fish это функции. Можно писать и свои функции. Синтаксис такой:

function [название]
    [тело функции]
end

Если функцию нужно сохранить для будущих сессий, не забудьте выполнить команду funcsave [название] после того как напишете функцию и проверите, что она корректно работает.

Для часто используемых команд можно создать более короткие синонимы — алиасы. В fish команда alias создаёт однострочную функцию.

Как выглядит alias?

Другой вариант сокращения команд — аббревиатуры. Они настраиваются командой abbr или в fish_config во вкладке «Abbreviations».

Удобно создавать аббревиатуру одновременно в английской и русской раскладках (см. скриншот). Такая аббревиатура выполнится, даже если вы забыли переключить раскладку клавиатуры.

Аббревиатуры подставляются «на лету», когда вы нажимаете Space или Enter. В отличие от алиасов, аббревиатуры не являются функциями.

И па и gf превращается в git fetch
И па и gf превращается в git fetch

Шаг 1: открываем терминал

Не терминал, а эмулятор терминала. (c) Департамент зануд

Обычно в ОС уже есть какой-то терминал, и для начала можно использовать его. Если хочется больше функций и возможностей кастомизации, то есть из чего выбирать. Некоторые терминалы позволяют открывать вкладки, разделять экран и даже рендерить картинки. Можно найти на любой вкус, например, стилизованный под старый ламповый монитор.

cool-retro-terminal
cool-retro-terminal

Выбор терминала — это тема для отдельной статьи. Кратко: если у вас Linux, начните с этого списка. На macOS популярен iTerm2, но я его не использовал, поэтому не могу ни поругать, ни похвалить.

Для меня важно чтобы и на компьютере с Linux, и на рабочем ноутбуке с macOS был один и тот же терминал с одинаковыми настройками. Я выбирал среди кроссплатформенных и остановился на kitty.

Шаг 5: сохраняем настройки

Чтобы не настраивать каждый раз все программы заново, нужно где-то сохранять настройки.

Конфиги — это файлы. Обычно они хранятся в корневой директории пользователя вместе со скриптами инициализации командной оболочки, например, в папке .config/. Если вы установили fish, то найдёте папку .config/fish/ и в ней файлы с настройками. Самый простой способ сохранить конфиги — сохранить их в Git-репозиторий.

Имена файлов и папок с настройками обычно начинаются с точки, поэтому одним словом их называют «dotfiles». На момент написания статьи на GitHub опубликовано 138 425 репозиториев с именем dotfiles — есть куда подсмотреть.

На странице awesome-dotfiles вы найдёте много информации про dotfiles. Там же есть ссылки на инструменты, которые помогают управлять dotfiles.

Я использую yadm. Мне важна кроссплатформенность, поэтому пригождается его возможность создавать альтернативные версии файлов для разных ОС.

Заключение

В консоли может быть сложно работать, если ее не «приручить». Но если выбрать удобную для себя командную оболочку и один раз ее настроить, то она будет постоянно помогать вам.

Чтобы не настраивать рабочее окружение на каждом новом компьютере заново, сохраняйте конфиги в Git-репозиторий. Но не забывайте о безопасности — следите, чтобы в репозиторий не попал ключи и пароли.

На замену старым утилитам приходят новые, нацеленные на пользователя, а не на скрипты. Используйте их и ищите новые! Если вам кажется, что утилита слишком сложная, возможно, вы такой не один и кто-то уже написал более простой в использовании аналог.

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

Если будут вопросы или вам понадобится помощь с освоением консоли, пишите мне в Telegram @osipxd. Ещё я иногда пишу в канал @rareilly заметки про Android и вообще про всё интересное, что нахожу. Спасибо за внимание!

Оставьте комментарий

Adblock
detector