小编clo*_*yn3的帖子

使用PowerShell 4.0从变量输入中删除空格

我已经尝试了一些东西,但它们似乎不是出于某种原因而起作用.

基本上我正在尝试做的是让用户使用"Read-host"cmdlet输入一个值,然后将其删除任何空格.

我试过了:

$answer = read-host
$answer.replace(' ' , '""')
Run Code Online (Sandbox Code Playgroud)

和:

$answer = read-host
$answer -replace (' ')
Run Code Online (Sandbox Code Playgroud)

我可能错过了一些非常明显的东西,但如果有人能帮助我或向我展示一种更容易实现这一目标的方法,我将不胜感激.

我打算将变量传递给命令并以这种方式剥离它,但我见过的所有例子都没有,尽管它们看起来更容易.

variables powershell spaces stripping

22
推荐指数
4
解决办法
14万
查看次数

显示文本块

我做了一些谷歌搜索,似乎无法找到一个有效的方法来显示整个文本块到控制台.Write-Host如果我需要显示一段代码,我宁愿不在每一行使用该命令.我正在尝试制作一个有点美观的互动脚本.有人可以给我一个例子吗?

powershell

5
推荐指数
2
解决办法
1万
查看次数

如何在本机支持它的powershell参数中使用通配符?

好的,对不起那个可能很无聊的问题.我已经研究PowerShell一段时间了,并且遇到了一些我无法弄清楚如何正确地为谷歌说话的东西.

从最基本的意义上说,这就是我想要做的.

Get-Process -id 76*
Run Code Online (Sandbox Code Playgroud)

现在我明白了-id不会处理通配符*.如果我想在理论上使用

Get-Process -id
Run Code Online (Sandbox Code Playgroud)

并为此创建一个通配符脚本,我该怎么做?我需要创建自己的功能吗?

我想补充说PS特别说参数*不是一个可用的字符-Name,但我可以使用它.这是MS的错误吗?提前感谢您的任何建议!

parameters powershell scripting wildcard

4
推荐指数
1
解决办法
1593
查看次数

在 PowerShell 中获取特定网络信息

我不确定这是我的错误,还是我的 PowerShell 运行不正常。

get-netipconfiguration | where {$_.subnetmask} 
Run Code Online (Sandbox Code Playgroud)

我也无法在网上找到任何有效的示例。我什至尝试使用WMI命令,但仍然无法正常工作。我有最新版本的 PowerShell 并且以前做过这个,但我以前的方法不起作用。目前我正在使用它来IPaddress获取效果很好的

$ipaddress = (Get-NetIPConfiguration).IPv4Address.IPAddres
Run Code Online (Sandbox Code Playgroud)

这很好用,但我似乎无法弄清楚如何使用它来显示DNSSubnet mask。我知道这可能是一个菜鸟问题,但他们已经改变了一些东西,我正试图找到一种没有太多代码的简单方法。任何帮助表示赞赏!

powershell networking

3
推荐指数
1
解决办法
5445
查看次数

在 "if" 语句中使用 Get-Date "time" PowerShell

$WshShell = New-Object -ComObject wscript.shell
$Time = (Get-Date).hour
$Time2 = Get-Date -DisplayHint Time
$Message ="Test for $Env:username at: " + $Time2
$fail = "ERROR:It is $Time2, which is past 12PM"
$PopUp = $WshShell.popup("$Message",0,"Task Scheduler Pop-up",1)
    if ($Time2 > 12)
            {
            $PopUp = $wshShell.popup("$Message",0,"Task Scheduler Pop-up",1)
            }
    else {
    $PopUp = $wshShell.popup("$fail",2,"Task Scheduler Pop-up",1)
    }
Run Code Online (Sandbox Code Playgroud)

大家好,我正在练习一点我的 PowerShell 并且遇到了一些我不太确定如何谷歌搜索的东西,或者我需要使用什么方法才能使其正常工作。

我试图完成的是只显示我的框,小时和分钟像“12:31”。正如您在脚本中看到的,我正在调用 Hour,但我不太清楚如何让它以正确的方式单独显示时间。我正在使用“时间”运算符,但是当您在“IF”语句中比较它时,它不会将其识别为可以与之进行比较的东西,因为它不是真正的整数。我明白为什么,但我希望能够将 .Hour 与 $Time2 进行比较

我是新手,感谢您提供的任何帮助!谢谢!

powershell if-statement

1
推荐指数
1
解决办法
2万
查看次数

PowerShell"Period"运算符,它有什么作用?

我一直在网上寻找一个特定的答案,以便更好地帮助我了解这是如何工作的.在PHP中,我们使用"."来连接字符串.但是在powershell中,我看到这样的事情:

    Dir | where {$_.extension -eq ".txt"} | 
    Rename-Item –NewName { $_.name –replace “.“,”-” }
Run Code Online (Sandbox Code Playgroud)

我可以看到"Dir"命令被管道传送到"Where"但是,我不明白它定义的变量用于什么:

    $_.extension
Run Code Online (Sandbox Code Playgroud)

这是一种向函数添加额外运算符的方法吗?我很困惑.我变得越来越好,但是,我需要知道确切的时期和$ _.使用cmdlet时工作,什么不是.

任何帮助表示赞赏.

powershell

0
推荐指数
1
解决办法
676
查看次数