Работа в командной строке Windows

  • doc
  • 27.04.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 28. Работа в командной строке Windows.doc

Работа в командной строке Windows

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

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

  • команды управления операционной системой — это такие команды, как shutdown или taskkill;
  • сетевые команды — net и ipconfig;
  • команды для мониторинга системы — tasklist и systeminfo;
  • команды для поддержки файловой системы — dir, mkdir, copy;
  • команды для обслуживания жестких дисков — defrag и diskpart;
  • команды для поддержки службы каталогов (Active Directories) — addrep и dsadd;
  • вспомогательные команды, в этот раздел входят различные утилиты для создания сценариев, настройки принтеров, работы с переменными окружения и т. д.

 Ниже собраны основные команды прописываемые в командной строке  Windows для выполнения определенной сетевой функции. Пример вида <имя>, практически пишется как имя. Чтобы запустить командную строку необходимо нажать Пуск - Выполнить ввести "cmd" Enter или OK.

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

net session /delete - закрывает все сетевые сессии

net user <имя пользователя> /domain- выводит всю информацию о пользователе а домене

netstat -a - получает список всех подключений к компьютеру

net sessions - выводит список текущих пользователей, необходимо иметь права администратора

net send <имя компьютера> "<сообщение>" - посылает сообщение пользователям удалённого компьютера

shutdown \\<имя компьютера> /t:2 /y /c - удалённо выключает компьютер, требуется Resource Kit (Rk)

shutdown \\  <имя компьютера> /r /y /c - удалённо перезагружает компьютер с Windows NT/2000 (Rk)

nbtstat -a <имя компьютера> - удалённо получает имя пользователя работающего на компьютере

nbtstat -A <IP address> - удалённо получает имя пользователя работающего на компьютере по IP- адресу

ipconfig /all - выводит Ethernet адрес сетевой карты

Windows 9x/Me  Пуск - Выполнить

winipcfg - выводит информацию о текущих сетевых настройках

Большинство сетевых команд это указание на запуск существующих утилит из папки system32, к примеру telnet.exe. Эти же утилиты запущенные из проводника работать не будут, так как для выполнения функций, заложенных в них разработчиками нужно указать к ним нужные параметры через командную строку.


Что мы делаем чтобы проверить подключение к интернету? Запускаем утилиту ping. С помощью отправки сообщений с эхо-запросом по протоколу ICMP Ping проверяет соединение на уровне протокола IP с другим компьютером, поддерживающим TCP/IP и фиксирует все полученные пакеты. Самым главным параметром является либо текстовый адрес узла, либо его ip адрес. Например чтобы запинговать яндекс можно написать ping www.ya.ru и через несколько секунд выведется статистика переданных и принятых пакетов и приблизительное время приёма-передачи и процент потерянных пакетов. Также выведется ip сайта. К ping можно подставить много дополнительных параметров, таких как число отправляемых сообщений с эхо запросом (ping www.ya.ru -n число), по умолчанию 4, возможность задать длину в байтах поля данных в отправленных сообщениях с эхо-запросом (ping www.ya.ru -i количество байт, по умолчанию - 32 байта, максимальный размер - 65527 байт) и многие другие. Посылка пакетов превышающих по величине допустимый предел, посылка испорченных пакетов, посылка большого числа пакетов за короткий промежуток времени (dos атака) - всё это приводит к зависанию сервера и невозможности обработки запросов на некоторое время. Вообще ping это отличное диагностическое средство. Чем меньше время задержки отклика сервера (в миллисекундах) тем работоспособнее и устойчивее сервер. Ping также производит оценку качества связи с помощью параметра процент потерь. В идеале, потерь вообще не должно быть. Потери могут возникать при связи через модем, когда происходят кратковременные "замирания" канала связи. Также допустимы потери в несколько процентов при связи с очень удаленными серверами. Потери более 10% приводят к существенному замедлению работы в Интернет.


Чтобы посмотреть статистику протокола Netbios набираем nbtstat. Вот все доступные параметры к этой команде:


-a удаленное_имя

Отображение таблицы имен NetBIOS удаленного компьютера, где удаленное_имя является именем NetBIOS удаленного компьютера. Таблица имен NetBIOS является списком имен NetBIOS, соответствующих приложениям NetBIOS, работающим на данном компьютере.


-A IP-адрес

Отображение таблицы имен NetBIOS удаленного компьютера, заданного IP-адресом (десятичные числа, разделенные точками).


-c

Отображение содержимого кэша имен NetBIOS, таблицы имен NetBIOS и их разрешенных IP-адресов.

 
-n

Отображение таблицы имен NetBIOS локального компьютера. Состояние Зарегистрирован означает, что это имя зарегистрировано на сервере WINS или в качестве широковещательного адреса.


-r
Отображение статистики разрешения имен NetBIOS. На компьютере Windows XP, настроенном для использования WINS, этот параметр возвращает количество имен, разрешенных и зарегистрированных для широковещательной рассылки или WINS.


-R

Очистка содержимого кэша имен NetBIOS и перезагрузка записей #PRE из файла Lmhosts.


-RR

Освобождение и обновление имен NetBIOS для локального компьютера, зарегистрированного на серверах WINS.


-s

Отображение сеансов клиента и сервера NetBIOS с попыткой преобразования конечного IP-адреса в имя.


-S

Вывод сведений о работе сервера и клиента NetBIOS; удаленные компьютеры выводятся только по IP-адресам.



Идём дальше. Для просмотра всех активных в данный момент сетевых подключений и прослушиваемых портов существует утилита netstat. Запущенная без параметров через командную строку отображает все активные в данный момент подключения по протоколу Tcp. Параметры:


-a

Выводит все активные подключения по протолу Tcp и список прослушиваемых портов Tcp и Udp.


-e

Вывод статистики Ethernet, например количества отправленных и принятых байтов и пакетов. Этот параметр может комбинироваться с ключом -s.


-n

Вывод активных подключений TCP с отображением адресов и номеров портов в числовом формате без попыток определения имен.


-p протокол

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


-s

Вывод статистики по протоколу. По умолчанию выводится статистика для протоколов TCP, UDP, ICMP и IP. Если установлен протокол IPv6 для Windows XP, отображается статистика для протоколов TCP через IPv6, UDP через IPv6, ICMPv6 и IPv6. Параметр -p может использоваться для указания набора протоколов.

 
Возможные состояния для подключений.


CLOSE_WAIT Закрывается


CLOSED Закрыто


ESTABLISHED Поддерживается


LISTEN Читается


TIMED_WAIT Превышение времени ответа


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


Команда nslookup - предоставляет сведения, предназначенные для диагностики инфраструктуры DNS. У неё много параметров, но самый значимый это адрес или ip узла. Например, при вводе nslookup www.ya.ru выполняется DNS запрос и выводится ip адрес сервера. Если ввести ip то выводится символьный адрес.


Команда hostname отображает имя вашего компьютера в сети.


Ipconfig с параметром /all - вывод полной конфигурации Tcp/Ip для всех сетевых адаптеров.
Ну и наконец утилита tracert - определяет путь до точки назначения с помощью посылки в точку назначения эхо-сообщений по протоколу ICMP. (синтаксис: tracert адрес_узла).
Команды группы net.


У утилиты net.exe есть несколько полезных параметров. Разберём некоторые из них.
Net config (параметры: server или workstation) - выводит сведения о службах сервер и рабочая станция. Данные службы должны быть запущены перед проверкой. Почти аналогично команде net statistics.


Net start (имя службы) - запускает указанную службу.


Net pause (имя службы) - приостанавливает указанную службу, если в данный момент она находилась запущенной.


Net continue (имя службы) - возобновляет работу приостановленной службы.


Net file - выводит список всех открытых файлов на сервере.


Net localgroup (параметры: имя_группы /add или /delete) - запущенная без параметров

выводит все локальные группы на компьютере, такие как Администраторы, Гости, Пользователи, Опытные пользователи и так далее... Также позволяет добавить новую группу или удалить существующую.


Net name (параметры: псевдоним /add /delete) - добавление или удаление сетевого псевдонима для службы сообщений. Запущенная без параметров выводит текущий.
Net send домен сообщение - отправка сообщений по сети в виде стандартных уведомлений Windows на нужный домен. Зависит от службы сообщений (Windows Messanger), у большинства пользователей она отключена из за возможных проблем безопасности. Параметр /all отправляет сообщение всем доступным компьютерам в сети. Убрана в Windows Vista.


Net share (параметры: имя ресурса или диск:путь) - расшаривает указанный ресурс для общего доступа к нему из сети. Можно хоть все диски целиком расшарить, но по понятным причинам так не делают :) Ключ /delete служит для удаления общего ресурса. Команда net share запущенная без параметров выводит список всех расшаренных ресурсов на компьютере.


Net view - вывод списка общедоступных ресурсов, схоже с net share.


Net use - служит для подключения общих ресурсов, таких как например сетевой файлообменник, расположенный на серваке админа. Общий синтаксис –

net use буква_нового_виртуального_диска сетевой_путь.


Net user - позволяет управлять всеми учётными записями системы. Например, net user имя_пользователя пароль (/add или /delete). Если запустить net user без параметров то перед нами появится список абсолютно всех учётных записей. Вы можете понять что в ваш компьютер проникли если вы увидите какую нибудь неопознанную и неизвестно как появившуюся учётку с именем типа Hacker. Смело удаляйте ключом /delete.


Telnet.
Об этой утилите и одноимённой службе следует сказать отдельно. Команды Telnet служат для управления удалённым компьютером через командную строку, работает только при запущенной службе telnet у себя и на компьютере к которому требуется подключится, по умолчанию висит на 23 порту. Набираем telnet и попадаем в другое окно cmd.exe с приглашением Microsoft Telnet.


Команды:
open адрес_узла порт(если не указать то по умолчанию выбирается 23) - открываем подключение.
close - закрываем подключение.


quit - выходим из telnet.


display - отобразить параметры (считываются из реестра).


unset - вернуть все параметры по умолчанию.


help - справка.


Когда мы открываем подключение к нужному узлу нам выводится окно с предложением авторизироваться. Чтобы управлять удалённым компьютером через командную строку нужно знать имя и пароль пользователя, который является администратором в удалённой системе. Существуют серьёзные ограничения и настройки, которые можно изменить в реестре {HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/TelnetServer/]. Например, запрещено подключение с пустым паролем. Как же порулить командной строкой чужого компа? Жертва должна запустить у себя троянца написанного на bat, создающего нового пользователя в группе Администраторы, а потом уже успешно подключаться. Как это сделать подробно написано в справке к команде net user. Всё равно telnet является потенциально опасным средством удалённого администрирования, поэтому если вы её не используйте лучше отключите насовсем.


Команды мониторинга и диагностики


Для выявления неполадок в аппаратной части и проблем с программным обеспечением предназначены команды мониторинга, такие как systeminfo и tasklist. Эти утилиты впервые появились только в операционной среде Windows Server 2003, поэтому администраторы еще не в полной мере оценили функциональные возможности этих команд. Так, например, теперь не надо залезать в закладку «Свойства» иконки «Мой компьютер» — команда systeminfo напечатает на экране консоли основную информацию обо всех компонентах системы с полной расшифровкой. Параметр /s выведет информацию о любом удаленном компьютере. Например, для выяснения конфигурации компьютера TESTSERVER необходимо выполнить следующую команду:

systeminfo /s TESTSERVER


А утилита tasklist покажет процессы, запущенные на вашем компьютере.


Утилита tasklist позволяет опрашивать системы, соединенные в сеть. Параметр /v дает возможность получать подробные листинги с полезной информацией, в том числе и об именах пользователей, а параметр /т показывает процессы, загрузившие конкретный dll-файл. Другая полезная утилита — openfiles — позволяет получить информацию обо всех открытых файлах локальной и удаленной операционной системы. В прежних версиях операционных систем Windows приходилось использовать команду oh.exe, в современных версиях достаточно выполнить в командной строке консоли команду, которая устанавливает режим мониторинга для всех открытых файлов системы:


openfiles /local on


Пользователь получит информацию обо всех открытых файлах системы, используя команду с простым синтаксисом:

 

Openfiles


Команда openfiles с параметрами /query /v показывает, какие пользователи запустили процессы, открывшие файлы. С помощью других параметров-ключей можно задать различный режим вывода информации.


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

 

rundll32 user,exitwindows

Завершение работы Windows

rundll32 user,wnetconnectdialog

Вызвать окно "Подключение сетевого диска"

rundll32 user,wnetdisconnectdialog

Вызвать окно "Отключение сетевого диска"

rundll32 user,disableoemlayer

Спровоцировать сбой

rundll32 user,repaintscreen

Обновить (как F5)

rundll32 user,setcursorpos

Курсор мыши переместить в левый верхний угол

rundll32 diskcopy,DiskCopyRunDll

Окно "Copy Disk" вызвать

rundll32 rnaui.dll,RnaWizard /1

Диалог "Установка Связи" вызвать (/1 = без окна)

rundll32 shell,shellexecute Explorer

Окно открыть в корневом каталоге

rundll32 shell32,OpenAs_RunDLL

Окно "Открыть с помощью..." вызвать***

rundll32 shell32,SHFormatDrive

Окно "Форматирование: Диск3,5(А)" вызвать

rundll32 shell32,ShellAboutA

Info-Box (о Windows) вызвать

rundll32 shell32,SHExitWindowsEx 0

Windows 98 перезагрузить (без autoexec.bat и др.)

rundll32 shell32,SHExitWindowsEx 1

Работу с Windows 98 закончить

rundll32 shell32,SHExitWindowsEx 2

Windows-98-PC boot

rundll32 shell32,SHExitWindowsEx -1

Windows-98-Explorer перезагрузить

rundll32 shell32,Control_RunDLL

Открыть окно "Панель управления"

rundll32 shell32,Control_RunDLL desk.cpl

Открыть "Свойства Экрана"

rundll32 shell32,Control_RunDLL main.cpl @

Открыть Modul-Панели управления из MAIN.CPL **

rundll32 krnl386.exe,exitkernel

выход из Windows без любых сообщений/вопросов

rundll32 user,swapmousebutton

"Переставить" клавиши мыши *

rundll32 keyboard,disable

"Отключить" клавиатуру *

rundll32 mouse,disable

"Отключить" мышь *

rundll rnaui.dll,RnaDial "провайдер"

Вызвать окно "Установка связи" с именем "провайдер"

rundll32 user,tilechildwindows

переместить все не свёрнутые окна сверху вниз

rundll32 user,cascadechildwindows

переместить все не свёрнутые окна каскадом

rundll32 sysdm.cpl,InstallDevice_Rundll

установить non-Plug&Play оборудование

rundll32 msprint2.dll,RUNDLL_PrintTestPage

выбрать в появившемся меню принтер и послать на него текст

rundll32 user,setcaretblinktime <n>

установить новую частоту мигания <n> курсора *

rundll32 user, setdoubleclicktime <n>

установить новую скорость <n> двойного нажатия *

rundll32 setupx.dll,InstallHinfSection DefaultInstall 130; C:\file.inf

окно "Перезапуск системы. Произвести её сейчас ? · Да/нет ·" ****