PowerShell: проверка сервисов – аналоги curl и telnet

Автор: | 02/02/2018

Т.к. в Windows Server 2012 нет привычных утилит, таких как curl и telnet – используем PowerShell.

Краткая заметка себе на будущее.

Содержание

a-la curl

Проверить ответ сервиса можно с помощью модуля Invoke-WebRequest:

[simterm]

PS D:\Tableau\Tableau Server\10.4\bin> invoke-webrequest http://google.com

StatusCode        : 200
StatusDescription : OK
Content           : <!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="en"><head><meta
                    content="Search the world's information, including webpages, images, videos and more. Google has
                    many speci...
RawContent        : HTTP/1.1 200 OK
                    X-XSS-Protection: 1; mode=block
                    X-Frame-Options: SAMEORIGIN
                    Cache-Control: private, max-age=0
                    Content-Type: text/html; charset=UTF-8
                    Date: Fri, 02 Feb 2018 12:07:40 GMT
                    Expires: ...
Forms             : {f}
Headers           : {[X-XSS-Protection, 1; mode=block], [X-Frame-Options, SAMEORIGIN], [Cache-Control, private,
                    max-age=0], [Content-Type, text/html; charset=UTF-8]...}
...

[/simterm]

StatusCode : 200

a-la telnet

А что бы проверить принимает ли сервис подключения на порт – используем TcpClient Class:

[simterm]

PS D:\Tableau\Tableau Server\10.4\bin> new-object system.net.sockets.tcpclient("google.com", 80)

Client              : System.Net.Sockets.Socket
Available           : 0
Connected           : True
ExclusiveAddressUse : False
ReceiveBufferSize   : 65536
SendBufferSize      : 65536
ReceiveTimeout      : 0
SendTimeout         : 0
LingerState         : System.Net.Sockets.LingerOption
NoDelay             : False

[/simterm]

Connected : True

Готово.