Секретные команды в командной строке windows

Обновлено: 07.07.2024

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

2. Распараллеливание циклов

Почти любому администратору знакома мощь циклов — как сделать что-либо для одного, сотни или тысячи пользователей, файлов, машин, процессов, или чего угодно. Большинство строят циклы последовательно, так что каждое задание завершается перед стартом следующего. Но можно посылать каждое задание в фон, и не ждать его завершения:

for HOST in $(< ListOfHosts); do ssh $HOST ’sudo apt-get update’ & done

Может вам нужна куча ssh-туннелей одновременно:

for HOST in $(< ListOfHosts); do ssh -C -N -R 80:localhost:80 $HOST & done

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

Плюсы: сберегает метрическую туеву хучу (⅔ имперской туевой хучи) времени ожидания завершения.
Совместимость: любой линукс.
Минусы: у баша должны быть ограничения на количество одновременных задач, но пока автор (и переводчик) в них не упёрся.

3. Ловля утечек памяти через крон

Утечки памяти в линуксе нечасты, но бывают, особенно с бета-дистрибутивами или самодельным софтом. Часто выявить программу с подтёком не так-то просто. В линуксе есть программа Out-Of-Memory, позволяющая отыскивать и убивать такие процессы, но пока она сработает, система уже может начать сильно тормозить — настолько, что вы теряете терпение и перезагружаетесь.

Обычный способ узнать потреблении памяти программой это запуск top (или его графического эквивалента, наподобие System Monitor), и проверка Размера Резидентной Части (Res или RSS) интересующих процессов (память, отведённая программой, вам не нужна — утечки происходят от использования, а не от отведения, и программа может отвести (allocate) кучу памяти без вреда для системы). Большинство граждан не в курсе, что top можно запускать пакетно, что означает, что можно использовать cron и top для создания простого отчёта об использовании программой памяти:

запустите top
кнопками < и > добейтесь сортировки процессов по RSS (размер резидентной части)
нажмите W для записи конфигурации в файл
добавьте крон-задачу:

И каждые 15 минут будете получать письмо с выводом топа.

Плюсы: куда как проще чем ставить софт наподобие SAR.
Совместимость: любой линукс.
Минусы: некоторые ограничения на количество одновременных задач.

4. stdin прямо из командной стоки

Не поняли, что это была за фигня (<<<)? Баш позволяет слать процессам стандартный ввод прямо из командной стоки.

Плюсы: позволяет писать команды с командной стоки, даже для альтернативно дружественных программ, которые требуют ВСЁ со стандартного ввода. [Грозит кулаком MySQL-ю].
Совместимость: bash 3 и новее.
Минусы: всё ещё немало систем с bash 2.

5. Установить первичный пароль, который надо поменять

Многие организации имеют хорошие и надёжные политики паролей. Пароли хранятся на виндозных машинах. Линукс либо не не покрывается политикой, либо политика не соблюдается — люди не в курсе авторизации под линукс (большинство граждан не понимают PAM, а линуксовые админы часто не осознают, что линукс может чудесно авторизоваться через Active Directory), и было время, что разработчики OpenSSH не любили PAM (это с тех пор поменялось).

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

umask u=rw,go=
openssl rand -base64 6 | tee -a PasswordFile | passwd –stdin joe
chage -d 0 joe

Пароль сохранён в файл PasswordFile, который доступен для четния только под своим акаунтом. После этого сообщите начальный пароль пользователю по надёжному каналу, вроде телефона или зашифрованного письма (Переводчику приходилось встречать систему, при которой начальный пароль высылался по обычному емэйлу. Пикантность была в том, что это был не фейсбук и не одноклассники. Это был онлайн-банк.)

Плюсы: пользователи не будут с начальным паролем бесконечно.
Совместимость: любой линукс с обновлённым OpenSSH (если ваши пользователи заходят в первый раз по SSH). РедХат утверждает, что это всё ещё не работает в RHEL 3/4, но после приложения их обновлений, всё хорошо.
Минусы: нет.

6. Простое добавление публичного ключа на удалённый хост

Для логина но новый хост по ключу надо сначала на этот хост записать публичную часть ключа. Конечно, это можно делать вручную, но вскоре это надоедает (и почему у ssh нет authorized_keys.d…), а ведь для этого есть специальная утилита:

Введите пароль последний раз, ssh скажет:

Now try logging into the machine, with “ssh ‘hostname’”, and check in:

to make sure we haven’t added extra keys that you weren’t expecting.

Попробуйте. До свидания, пароли!

7. Распаковка RPM без дополнительного софта

На дебиано-подобных дистрибутивах это не проблема, потому что .deb файлы есть просто .ar архивы. Каждое руководство по РедХату упоминает rpm2cpio (идёт по умолчанию с rpm), но если честно, я не способен запомнить синтаксис cpio, античный формат, сейчас использующийся только, мм, пожалуй, только рпм-ом.

Эта команда ставит пакет во временную директорию, но не меняет RPM базу (только во временной диркетории, которую вы потом сотрёте). Поскольку в ней нет больше ничего, мы запрещаем зависимости и скрипты.

rpm -ivh –root /tmp/deleteme –nodeps –noscripts package.rpm

8. Изменился ли файл с момента поставки


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

Потом разверните оригинальный пакет при помощи tar (DPKg) или трюка с rpm, данного выше (RPM), и запустите:

И найдите разницу.

Плюсы: быстрое нахождение плохих конфиг-файлов (strace тут тоже может пригодиться)
Совместимость: любой линукс.
Минусы: у вас остаётся больше времени на работе, чтобы читать Digg.

9. — Первым делом отключите связь… Ало? ало? идиоты!

Ковыряетесь в файрволе удалённо? Нервно как-то, правда? Не то нажал, и связь потеряна.

Почему бы не откатить ошибку? Зарядите откат того, что вы собираетесь менять.

at now + 5 minutes <<< 'cp /etc/ssh/sshd_config.old /etc/ssh/sshd_config; service sshd restart'

Если ошибётесь, процесс выполнится и восстановит установки. А если не ошибётесь, запустите atq, и atrm <номер задачи> для удаления.

Плюсы: прикрывает задницу на случай ошибки.
Совместимость: любой линукс, в котором разрешён at, а он обычно да.
Минусы: помнить, что это надо сделать перед рискованным действием.

10. Открыт ли порт


Хотите проверить, запущен ли сетевой сервис? Netcat с опцией -w (сколько ждать) будет полезен:

Соединиться на ssh порт на хосте по имени server, ждать 3 секунды перед тем, как послать, мм, ничего, и закрыть соединение. Был ли порт открыт, будет отражено в статусе nc.
if nc -w 3 localhost 22 <<< ''&> /dev/null
then
echo 'Port is open'
else
echo 'Port is closed'
fi

А вот ещё несколько бонусных трюков… (Перевод воспоследует при благорпиятных отзывах на эту часть.)

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

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

Список всех установленных драйверов

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

Выполнить несколько команд последовательно
Получить справку по любой команде

Если вы не можете понять, что делает конкретная команда, или каковы варианты ее использования, вам не придется искать эту информацию в Интернете. Командная строка предоставляет полную информацию о том, что делает каждая команда, и может даже привести примеры использования команды (если это возможно). Просто наберите / ? после интересующей вас команды, например assoc / ? .

Узнать IP-адрес веб-сайта
Просмотр ранее введенных команд

Если во вермя сеанса работы в консоли вам нужно ввести команду еще, вам не придется вводить ее снова. Все, что вам нужно сделать, это клавиши использовать клавиши курсора со стрелками вверх и вниз, чтобы циклически переключаться между всеми уже выполненными командами. Вы также можете нажать фнкциональную клавишу F8, чтобы сделать то же самое. Ниже приведен список действий для остальных функциональных клавиш при работе в коммандной строке:

Кроме того, если вы хотите прекратить выполнение команды до того, как она сама завершит работу, вы может использовать комбинацию клавиш Ctrl + C.

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

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

Автодополнение команд клавишей Tab

Автодополнение команд клавишей Tab это еще одна возможность окна командной строки, которая поможет сохранить вам много времени, особенно если ваша команда содержит имя файла или папки и вы в нем не совсем уверены.

Чтобы использовать автодополнение в командной строке, просто введите команду, а затем часть пути к файлу, которую вы знаете. Затем, нажмайте клавишу Tab до тех пор, пока нужное вам значение не будет вставленно в командную строку.

Например, вы хотите изменить каталоги в какую-нибудь папку в папке Windows, но вы не уверены, как она называется. Введите команду cd C : \ Windows \ , а затем нажимайте клавишу Tab до тех пор, пока не увидите папку, которую вы ищете.

Узнать IP-адрес и имя своего компьютера в локальной сети

С помощью одной команды командной строки вы можете легко получить основную информацию о вашем подключении к сети, например такую как IP-адрес, маска подсети и адрес шлюз по умолчанию. Для этого введите в командной строке ipconfig / all и нажмите клавишу Enter. Чтобы узнать сетевое имя своего компьютера введите команду hostname

Кроме того, если IP-адрес вашему компьютеру назначается динамически (т.е. в вашей сети исползуется DHCP) вы может принудительно обновить ваш IP-адрес выполнив следюущую команду:
ipconfig / release & ipconfig / renew

Получить информацию о сетевых дисках и папках

Введите net use в командной строке, и вы увидите вам все сетевые диски, к которым вы подключены. Чтобы узнать, какие папки на вашем компьюетер являются доступными из сети, введит команду net share .

Узнать модель и серийный номер вашего компьютера

Введите wmic computersystem get model , чтобы выяснить модели компьютера, на котором вы работаете. Кроме того, вы можете выяснить серийный номер вашего компьютера введя следующую команду: wmic bios get serialnumber .

Открыть проводник Windows из командной строки

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

Выключение и перезагрузка компьютера из командной строки

14 команд CMD, которые должен знать каждый пользователь

Нередко неопытные пользователи воспринимают командную строку Windows как нечто совершенно ненужное и отжившее свой век. Думать так — это большая ошибка. Значение командной строки или иначе консоли CMD трудно переоценить даже после того как она потеряла большую часть своих команд доступных в MSDOS. Достоинство командной строки заключается, прежде всего, в обеспечении прямого доступа к операционной системе и её скрытым возможностям, кроме того консоль CMD имеет в себе несколько полезнейших встроенных утилит предназначенных для работы с программными и аппаратными компонентами компьютера.

Быть асом командной строки совершенно не обязательно, тем не менее, есть команды, которые должен знать каждый уважающий себя пользователь Windows. Вот они.

Assoc

14 команд CMD, которые должен знать каждый пользователь

Большинство пользовательских файлов в операционной систем связаны с определёнными программами, которые обрабатывает их по умолчанию. Такая связь называется ассоциацией. Для её просмотра как раз и существует команда assoc. При её выполнении выводится список сопоставлений расширений и типов файлов. А ещё команда assoc позволяет изменять ассоциации.

Например командой assoc .html = txtfile для файлов с расширением HTML устанавливается тип файла txtfile (текстовый). Если же вам нужно узнать какой именно программой открываются файлы с таким расширением, используйте команду ftype txtfile.

Cipher

14 команд CMD, которые должен знать каждый пользователь

Эта команда предназначается для шифрования и дешифрования данных на дисках с файловой системой NTFS, но с таким же успехом она может использоваться для зачистки свободного дискового пространства. Пользоваться ей очень просто. Если вам нужно гарантированно удалить остатки всех ранее удалённых файлов на диске D, выполните в консоли команду cipher /w:D.

Driverquery

14 команд CMD, которые должен знать каждый пользователь

Полезная команда позволяющая просмотреть список всех установленных в операционной системе драйверов. При выполнении команды без параметров данные выводятся в виде отсортированного списка. Колонка «Модуль» содержит имена драйверов без расширения, колонка «Название» включает краткое описание драйвера, «Тип драйвера» — соответственно тип, «Дата ссылки» указывает на дату установки или последней модификации драйвера.

FC (File Compare)

14 команд CMD, которые должен знать каждый пользователь

Команда FC пригодится в основном кодерам, также она может использоваться теми юзерами, которым приходится работать с текстовыми файлами. Эта команда позволяет сравнивать содержимое двух файлов, отыскивая между ними несоответствия. Допустим, у вас имеются два файла file1.docx и file2.docx и вы хотите их сравнить. Выполните в консоли следующую команду:

Ipconfig

14 команд CMD, которые должен знать каждый пользователь

Netstat

14 команд CMD, которые должен знать каждый пользователь

Эта команда выводит список всех текущих интернет-соединений. Используется она в основном администраторами для отображения TCP и UDP-соединений, прослушиваемых портов, таблиц маршрутизации и статистических данных для различных протоколов. Также может использоваться для поиска следов, оставляемых вирусами и прочими вредоносными объектами. Выполненная без параметров команда Netstat отображает тип соединения, локальный адрес, внешний адрес и текущее состояние.

14 команд CMD, которые должен знать каждый пользователь

Как и Netstat команда ping используется в основном системными администраторами. Служит она для диагностики компьютерных сетей. С её помощью можно определять доступность тех или иных ресурсов. Допустим вам нужно проверить доступность Google. Поскольку DNS сервер Google имеет адрес 8.8.8.8, в консоли CMD нужно выполнить команду ping 8.8.8.8.

Tracert

14 команд CMD, которые должен знать каждый пользователь

Pathping

14 команд CMD, которые должен знать каждый пользователь

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

Powercfg

14 команд CMD, которые должен знать каждый пользователь

Мощная утилита командной строки, предназначенная для управления параметрами электропитания Windows. Выполняется только с параметрами. Выполненная с ключом /Q команда Powercfg выводит текущую конфигурацию схемы электропитания, с ключом /a выводит отчет об использовании электроэнергии в ноутбуках, с ключом –energy генерирует детальный текстовый лог о состоянии компонентов компьютера, включая аккумуляторные батареи. Также команда Powercfg может использоваться для создания резервных копий настроек электропитания и развёртывания их на новом оборудовании.

Shutdown

14 команд CMD, которые должен знать каждый пользователь

Эта команда используется для завершения сеанса пользователя, выключения, перезагрузки и перевода компьютера в режим гибернации. Поддерживает удалённое управление. Выполняется shutdown всегда с параметрами. Например, команда вида shutdown /s /t 0 приведёт к завершению работы открытых приложений и немедленному выключению компьютера. Посмотреть список доступных ключей можно выполнив в консоли shutdown /?.

Sfc (System File Checker)

14 команд CMD, которые должен знать каждый пользователь

Одна из самых полезных и нужных команд. Предназначается для обнаружения и восстановления повреждённых или модифицированных системных файлов Windows. Восстановление производится из резервных копий создаваемых самой операционной системой. Чтобы запустить сканирование системы с последующим восстановлением файлов выполните команду sfc с параметром /scannow. После завершения проверки потребуется перезагрузка компьютера. Выполнять эту команду нужно в консоли, запущенной от имени администратора.

Tasklist

14 команд CMD, которые должен знать каждый пользователь

Команда Tasklist делает ту же работу, что и Диспетчер задач. Выполненная без параметров она выводит список всех запущенных процессов выполняющихся на локальном или удалённом компьютере. При этом для каждого процесса отображается его название, идентификатор (PID), имя сессии, номер сеанса и выделенный объём оперативной памяти. Команда Tasklist поддерживает использование ключей и фильтров. Например, Tasklist /SVC выводит список процессов вместе со службами для каждого процесса в отдельности.

Taskkill

14 команд CMD, которые должен знать каждый пользователь

Если Tasklist просто выводит список запущенных процессов, то Taskkill завершает их работу в принудительном режиме. Правда для этого вам потребуется знать идентификатор завершаемого процесса или название исполняемого файла. Допустим, вам нужно принудительно закрыть Блокнот. Выполняем для начала команду Tasklist и смотрим PID процесса notepad.exe. В нашем случае он имеет значение 2580. Зная PID процесса его легко можно «убить». Сама же команда будет выглядеть так: Taskkill /PID 2580. Примерно так же сработает команда Taskkill /IM notepad.exe, только в этом примере будут завершены все экземпляры процесса notepad.exe.

На этом пока всё. Есть и другие полезные команды CMD, с которыми пользователям желательно было бы познакомиться, но о них мы расскажем в следующий раз. К таковым в частности относится Diskpart — мощный инструмент управления дисками и разделами не уступающий возможностями коммерческим программным продуктам типа Acronis Disk Director.

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

Впрочем, желающим освоить консоль CMD не мешало бы также обратить внимание на её продвинутый аналог — встроенную утилиту PowerShell.

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

Представляю вашему вниманию список всех команд командной строки (cmd.exe). Не используйте эти команды, если не понимаете конкретно, для чего нужна та или иная команда. В противном случае вы можете нарушить работу системы или удалить часть ваших важных данных, а то и всех данных.

  • ASSOC– команда выводит общий список сопоставлений типов файлов без параметров.
  • ADDUSERS – добавить список пользователей из файла CSV;
  • ADMODCMD – пакетная замена «Активных директорий»;
  • APPEND – данная команда разрешает программам открывать файлы данных в присоединенном каталоге, как если бы они находились в текущей папке;
  • ARPAddress – протокол, предназначенный для определения MAC адреса с условием известного IP адреса;
  • AT – команда для управления планировщиком задач;
  • ATTRIB – необходима для изменения атрибутов файла;
  • AUDITUSR – Поможет задать политику аудита всех пользователей;
  • BREAK – Включает или выключает принудительное завершение командного файла путем клавишей CTRL+C;
  • BCDBOOT – Команда для восстановления или создание системного раздела;
  • BOOTCFG – Редактирование настроек загрузки операционной системы;
  • Browstat – Покажет информацию об основных обозревателях домена;
  • BCDEDIT – Изменение данных хранилища конфигурации начальной загрузки;
  • CACLS – Настройка управления доступом к файлам;
  • CALL – вызывает один пакетный файл из другого;
  • CHANGE – Редактирование настроек сервера теминалов
  • CD – Переход в определенную папку;
  • CHCP – Вывод или изменение кодировки страницы;
  • CHOICE – Пользовательский ввод в пакетном файле;
  • CHDIR – Вывод названия или смена текущей папки;
  • CHKDSK – Проверка жесткого диска, исправление ошибок и вывод отчета;
  • CHKNTFS – Проверка файловой системы на ошибки, диагностика жесткого диска во время загрузки системы;
  • CIDDAEMON – Сервис индексирования файлов;
  • CLS – Очистка экрана;
  • CIPHER – Откроет программу шифрования файлов;
  • CLEANMGR – Чистка корзины и временных файлов автоматическим путем;
  • CLEARMEM – Чистка КЭШа памяти
  • CLIP – Перенаправит вывод утилит командной строки в буфер обмена операционной системы;
  • CLUSTER – Кластеризация операционной системы;
  • CMD – Откроет новое независимое окно с командной строкой;
  • CMDKEY – Управление именами и паролями пользователей;
  • CMSTP – Настройка профилей диспетчера подключений;
  • COLOR – Можно поменять цвет фона и текста в окне командной строки;
  • COMP – Сравнение содержимого двух файлов;
  • COMPACT – Управление распаковкой и сжатием файлов в разделе NTFS;
  • COMPRESS – Сжимает отдельные файлы в разделе NTFS;
  • CON2PRT – Возможность подключить или отключить принтер;
  • CONVERT – Преобразование файловой системы из FAT в NTFS;
  • COPY – Скопировать из одного места в другое один или несколько файлов;
  • CSCCMD – Управление автономными файлами при удаленном подключении;
  • CSVDE – Экспорт и импорт данные соглашения о соединении;
  • DATE – Настройка и отображение даты;
  • DEBUG – Отладка и редактирование программ;
  • DEFRAG – Дефрагментация жесткого диска;
  • DEL – Удаление одного или нескольких файлов;
  • DELPROF – Удаление профиля пользователя;
  • DELTREE – Удаление папки со всеми подпапками;
  • DEVCON – Диспетчер устройств командной строки;
  • DIANTZ – Архивация файлов в CAB
  • DIR – Отображает список файлов и папок из указанного каталога;
  • DIRUSE – Посмотреть дисковое пространство;
  • DISKCOMP – Сравнивает содержимое двух гибких дисков;
  • DISKCOPY – Копирование содержимого с одного диска на другой;
  • DISKPART – Настроит параметры запоминающих устройств;
  • DISKPERF – Покажет счетчик производительности дисков;
  • DNSSTAT – Посмотреть статистику DNS
  • DOSKEY – Редактирование командной строки, создание макросов;
  • DSACLS – Запрос и изменение разрешений атрибутов безопасности, а также безопасности Active Directory;
  • DSADD – При выполнении задач администрирования, покажет службу каталогов Active Directory;
  • DSGET – Покажет свойства объектов каталога;
  • DSQUERY – Поиск объектов в Active Directory, по заданным условиям;
  • DSMOD – Изменение атрибутов у существующего объекта каталога;
  • DSMOVE – Перемещение объекта из Active Directory;
  • DSRM – Удаление объекта или всего дерева, расположенного ниже по иерархии;
  • DRIVERQUERY – Покажет список и свойства установленных драйверов устройств;
  • GETMAC – можно узнать MAC-адрес (уникальный физический адрес сетевой платы/адаптера) одного или нескольких сетевых адаптеров;
  • GLOBAL – отобразит всех членов глобальных групп;
  • GOTO – передаст управление в пакетном файле к другой команде в отмеченной строке;
  • GPUPDATE – выполнит обновление групповых политик;
  • GPRESULT – Покажет сведения о групповой политики для пользователя или компьютера;
  • GRAFTABL – Показывает расширенный набор символов в графическом режиме;
  • HELP – Выводит справочную информацию о командах командной строки;
  • HOSTNAME – Покажет имя компьютера;
  • ICACLS – Возможность управлять доступом к файлам и папкам;
  • IF – Выполнит команду по заданному условию в пакетном файле;
  • IFMEMBER – Проверить, является ли текущий пользователь членом рабочей группы;
  • IPCONFIG – Позволяет настроить конфигурацию IP;
  • KILL – Завершить какой-либо процесс или программу;
  • ODBCCONF – Настройка драйвера ODBC;
  • OPENFILES – Отображение открытых файлов на компьютере;
  • QAPPSRV – Показывает доступные серверы терминалов;
  • QGREP – Поиск файлов в строках, по заданному значению;
  • QPROCESS – Отображение информации о процессах;
  • QWINSTA – Отображение информации о сеансах сервера терминалов;
  • UNLODCTR – Удаление имен счетчиков;
  • USERINIT – Проводник операционной системы;
  • USRSTAT – Отображение списка имен доменов;
  • VER – Информация о версии;
  • VERIFY – Режим проверки правильности записи на диск;
  • VOL – Вывод метки и тома диска;
  • VSSADMIN – Инструмент теневого копирования тома;
  • XCOPY – Копирование папок и файлов;
  • XCACLS – Настройка разрешения для файлов и папок;

Список всех команд командной строки (CMD) обновлено: Август 9, 2017 автором: admin

Читайте также: