小编Sun*_*une的帖子

使用PowerShell从主机名解析IP地址

我试图使用Powershell从主机名获取ipaddress,但我真的无法弄清楚如何.

有帮助吗?

powershell

39
推荐指数
4
解决办法
9万
查看次数

计算数组的长度,如果只包含一个元素,则返回1

$cars = "bmw","audi","volvo","vw"
echo $cars.length
Run Code Online (Sandbox Code Playgroud)

返回4,但是

$cars = "bmw"
Run Code Online (Sandbox Code Playgroud)

返回3因为它计算字符..

如果数组只包含一个项目,有没有办法可以返回1?

arrays powershell

21
推荐指数
3
解决办法
10万
查看次数

检查命令是否已成功运行

我已经尝试将以下内容包含在if语句中,这样如果成功,我可以执行另一个命令:

Get-WmiObject -Class Win32_Share -ComputerName $Server.name -Credential $credentials -Filter "Description='Default share'" | Foreach-Object {
        $Localdrives += $_.Path
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚该怎么做.我甚至尝试创建一个函数,但我无法弄清楚如何检查函数是否已成功完成.

powershell if-statement

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

如何从我所在的同一文件夹中调用文件(在脚本中)

我想从脚本A调用脚本B而不指定完整路径.我试过了

.\scriptb.ps1
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我真的必须指定整个路径吗?

(对不起这个非常基本的问题,但谷歌无法帮助我!)

powershell

20
推荐指数
3
解决办法
3万
查看次数

将函数放在单独的脚本中并对它们进行点源 - 范围是什么

我把我的函数放在一个单独的文件中,然后调用该文件:

$workingdir = Split-Path $MyInvocation.MyCommand.Path -Parent
. "$workingdir\serverscan-functions.ps1"                        
Run Code Online (Sandbox Code Playgroud)

但是,如果我把脚本称为

my-function
Run Code Online (Sandbox Code Playgroud)

变量范围(来自"my-function")将如何?我还应该使用$ script:变量来使变量存在于函数外部还是我也可以点源函数?

希望我不要把任何人与我的问题混淆......我试图让它尽可能地理解,但仍然学习所有的基本概念,所以我觉得很难解释..

powershell scope function

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

脚本组织(我的所有功能都混乱了我的脚本)

我有一个大脚本,我现在正在使用函数进行清理.但是,我发现将它们放在脚本的顶部会变得有点混乱.我必须滚动过去几百行代码才能进入脚本本身..

你们怎么保持脚本整洁?你的功能是否在一个单独的文件中?

powershell function

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

将时间121.419419转换为可读分钟/秒

我想计算我的脚本运行的时间,但是get-date的结果是以秒为单位.

如何将此转换为31:14:12 behing hours:minutes:seconds?

powershell time

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

Web前端到我的Powershell脚本以获取帮助台

我想为我的powershell脚本提供一个Web前端,以获得帮助台.

这些脚本通常是用户创建脚本和脚本,用于重新启动特定服务器上的特定服务.

我应该从哪里开始?我需要什么?

如果需要,我可以为此目的设置IIS.我们在专用服务器上也有Sharepoint.

希望有一些启动技巧:)

iis powershell sharepoint asp-classic web-frontend

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

管理后台作业的运行时间。如果x秒后仍未完成,则会超时,

我想对后台作业(以开头start-job)进行计时,并在x几秒钟后将其超时。但是,我很难跟踪每个单独作业的运行时间(我正在运行aprox 400作业)。

我希望有一种方法来超时工作,并将其设置为failed如果不是completed在X秒,但我觉得没有超时参数。

什么是跟踪作业的各个运行时间的好方法?

我想我可以用每个作业的开始时间和作业ID创建一个哈希表,并对照running状态进行检查并进行手动超时,但这听起来有点像“发明轮子”。有任何想法吗?

编辑 谢谢大家在这个主题上进行了富有成果的讨论和启发!

powershell timeout start-job

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

在函数执行后访问函数内部创建的变量

我正在使用一个函数,它创建了一些我想在函数处理后使用的变量.我试过直接访问它们但我不能.我该怎么做呢?

variables powershell function

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