PowerShell实现测试端口可用性脚本分享_PowerShell

利用简单的TCP套接字来简单判断一个端口是否可用:

复制代码 代码如下:

Function Test-PortAvailable
{
    param(
    [validaterange(1,65535)]
    [int]$Port
    )
    $sockt=New-Object System.Net.Sockets.Socket -ArgumentList 'InterNetwork','Stream','TCP'
    $ip = (Get-NetIPConfiguration).IPv4Address |
        Select -First 1 -ExpandProperty IPAddress
    $ipAddress = [Net.IPAddress]::Parse($ip)
    Try
    {
        $ipEndpoint = New-Object System.Net.IPEndPoint $ipAddress,$port
        $sockt.Bind($ipEndpoint)
        return $true
    }
    Catch [exception]
    {
        return $false
    }
    Finally
    {
        $sockt.Close()
    }
}

使用示例:

复制代码 代码如下:

PS> Test-PortAvailable -Port 102
True
PS> Test-PortAvailable -Port 1025
False

时间: 2024-09-20 07:32:37

PowerShell实现测试端口可用性脚本分享_PowerShell的相关文章

PowerShell实现的文件同步脚本分享_PowerShell

#分别定义源.目标文件夹,注意大小写敏感 $folder_a_path = "D:\a" $folder_b_path = "D:\b" #遍历源文件夹下所有文件 $folders_a = gci $folder_a_path -Recurse foreach ($folder_a in $folders_a) { #通过替换的方式,取目标文件的全路径名称 $b = $folder_a.fullname.replace($folder_a_path,$folder_

PowerShell实现的文件同步脚本分享

  这篇文章主要介绍了PowerShell实现的文件同步脚本分享,本文直接给出实现代码,需要的朋友可以参考下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #分别定义源.目标文件夹,注意大小写敏感 $folder_a_path = "D:a" $folder_b_path = "D:b" #遍历源文件夹下所有文件 $folders_a = gci

Powershell实现从注册表获取用户配置脚本分享_PowerShell

支持所有版本. 要获得本地用户的配置文件,可以使用这个脚本: 复制代码 代码如下: $path = 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\*'   Get-ItemProperty -Path $path |   Select-Object -Property PSChildName, ProfileImagePath 这将获得ProfileList下所有的键值

Powershell实现导入安装证书功能脚本分享_PowerShell

支持所有版本. 通常从文件加载一个证书并且安装它到指定的库.可以使用下面的脚本: 复制代码 代码如下: $pfxpath = 'C:\temp\test.pfx' $password = 'test' [System.Security.Cryptography.X509Certificates.StoreLocation]$Store = 'CurrentUser' $StoreName = 'root'   Add-Type -AssemblyName System.Security $cer

PowerShell中获取Windows系统序列号的脚本分享_PowerShell

windows序列号可以直接在注册表中读取,PowerShell要做的只是读出数据后稍作处理,让它更像一个序列号. 复制代码 代码如下: function Get-ProductKey {        $map="BCDFGHJKMPQRTVWXY2346789"     $value = (get-itemproperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").digitalproductid

Powershell读取PFX证书并输入密码的脚本分享_PowerShell

支持所有PS版本 当你使用Get-PfxCertificate读取PFX证书去签名你的脚本,但是它总是会已交互式方式提示用户去输入密码. 下面介绍怎么通过脚本去提交密码: 复制代码 代码如下: $PathToPfxFile = 'C:\temp\test.pfx' $PFXPassword = 'test'   Add-Type -AssemblyName System.Security $cert = New-Object System.Security.Cryptography.X509Ce

Powershell实现获取电脑序列号功能脚本分享_PowerShell

支持所有版本. 先前的技巧中我们知道如何从戴尔序列号去查询保修信息.其它供应商也有类似服务. 下面一段代码能获取电脑序列号: 复制代码 代码如下: $ComputerName = $env:COMPUTERNAME   $serial = (Get-WmiObject -ComputerName $ComputerName -Class Win32_BIOS).SerialNumber "Your computer serial is $serial"

PowerShell添加本地账户脚本分享_PowerShell

脚本源码: 复制代码 代码如下: $nt=[adsi]"WinNT://localhost" $user=$nt.create("user","test") $user.setpassword("password") $user.setinfo() Get-WmiObject -Class Win32_UserAccount -Filter "name = 'test'" | Set-WmiInstance

获取服务器信息的Shell脚本分享(ubuntu、centos测试通过)_linux shell

此脚本已经在ubuntu以及centos版本上测试通过,脚本如下: 复制代码 代码如下: #!/bin/bash Line='===========' #linux发行版名称 if [[ -f /usr/bin/lsb_release ]]; then OS=$(/usr/bin/lsb_release -a |grep Description |awk -F : '{print $2}' |sed 's/^[ \t]*//g') else OS=$(cat /etc/issue |sed -n