问题标签 [write-host]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2170 浏览

powershell - 写入主机和写入输出的结果有什么区别?

我是 PowerShell 的新手,在做一些代码时,我经历了这件事。当我使用Write-HostandWrite-Output执行相同的查询时,我得到了不同的结果:

对比

0 投票
1 回答
671 浏览

powershell - POWERSHELL:将 exe 文件输出管道传输到变量

我正在尝试执行一个 sript 来运行 exe 文件,获取输出,搜索输出,然后如果它是真的做一些事情:

所以finished with success在第1行不起作用,你知道如何检查if语句吗?if ( -eq "Finished with Success").

0 投票
2 回答
3370 浏览

powershell - 写主机和登录在一行?

我对 PowerShell 很陌生,并且自学了它。我的问题是你可以在同一行上使用'write-host'和'log-write'作为一个动作运行吗?

我所拥有的是:

但我想知道是否有办法做到这一点:

感谢您的任何帮助!

0 投票
1 回答
48 浏览

powershell - 系统返回类的名称而不是变量

我正在编写一个小的 PowerShell 脚本,它允许我从 Active Directory 中获取用户并为他们随机生成密码。

而不是最后一行返回

好的,用户的新密码已设置为“[密码]”。

它回来了

好的,用户的新密码已设置为“System.Security.SecureString”。

我相信它会返回该类而不是将其设置为密码,因为我无法使用它作为用户的密码登录。我假设我忽略了一些东西,但我已经盯着它看了很长时间,看不到我错过了什么。我也试过注释掉这条线

它似乎没有帮助,我预计会出错,因为变量不再匹配。

0 投票
4 回答
82 浏览

powershell - 如何写出长度取决于用户条目长度的字符串?

我正在编写一个具有大量输出的脚本,并且可以采用多个计算机名称。输出宣布计算机名称,然后是有关该特定计算机的大量信息。我想在上面和下面有一系列#s ,它在每个信息部分之前宣布计算机名称,但想看看我是否可以让 #s 的数量与提供的计算机名称的长度相同(s )。例如:

或者

我宁愿不必为每种可能的情况都有一个 if else ,例如

等等。如果必须,我会的,只有十个左右。或者我可以只使用一定数量的#s ,它们肯定会至少覆盖计算机名称的最大长度。

0 投票
1 回答
1197 浏览

powershell - if/else 语句和复制项问题

这里有简单的脚本,至少我认为应该是这样,但我对最终结果有疑问:

问题是它从不复制文件,我哪里出错了?

我在这里先向您的帮助表示感谢。

0 投票
1 回答
932 浏览

powershell - How to echo predefined variable from PowerShell command line?

I'm able to Write-Host a custom variable from PowerShell command line, but predefined variables are not working with same way.

What is proper way to echo a predefined variable.

Write-Host $path works.
Write-Host $PSScriptRoot does not.

Here is my code.

I would like to have parent directory of current script as variable.

Something like this $RootPath = Split-Path (Split-Path $PSScriptRoot -Parent) -Parent.

0 投票
2 回答
1254 浏览

powershell - Powershell:将主机写入当前目录/$computername

我正在尝试在当前目录中输出 CSV,但在与 $ComputerName 匹配的文件夹中,该文件夹已经存在。我定期为机器列表执行此操作,而不是手动将它们放在他们的文件夹中,在脚本中执行此操作会很棒。

这是当前代码,写入脚本目录。

我尝试将 $ComputerName 添加到各个位置,但没有运气。

例子:

编辑: $ComputerName 是目标的变量,而不是本地主机

0 投票
1 回答
3962 浏览

powershell - 从远程系统上的 Invoke-Command 捕获 Write-Host 输出和退出代码

我有一个位于远程系统上的脚本。

在 C:\tmp\hgttg.ps1 下的服务器“web12”上:

我使用 Invoke-Command 从本地机器(运行 v4.0 的两个系统)调用此脚本:

这会在执行时导致以下输出:

($result 没有设置,输出直接到控制台,不好!)经过大量的网络搜索和故障排除,我得到了一些改进:

现在我能够捕获返回码,但输出仍然直接进入控制台。这是我所能得到的。在我已经尝试过的一长串事情中,以下都没有奏效:

  • 而不是 '&' 使用 'Invoke-Expression' 和 -OutVariable out; 新对象 -TypeName PSCustomObject -Property @{code=$LASTEXITCODE; 输出=$out}

这将产生输出:

  • 在内部和外部命令的末尾尝试使用 '4>&1' 和 '*>&1' 进行上述两次迭代,没有变化。

  • 尝试了以下各项:

    1. "& $using:cmd | Tee-Object - 变量输出;$out"
    2. "& $using:cmd >$out; $out"
    3. "$out = & $using:cmd; $out"

    (丢弃返回码只是为了获得输出)同样,没有变化。

  • 还尝试:'& $using:cmd >> C:\tmp\output.log; $LASTEXITCODE'。生成的文件是空的,文本仍然输出到本地终端。

我敢肯定,我缺少一些明显的东西,但到目前为止,我所遇到的都是死胡同。有什么建议么?

0 投票
2 回答
4774 浏览

powershell - 如何在 powershell 数组中写入托管元素的单个属性?

我向 Office365 查询了与Chris的 displayName 匹配的所有用户的列表。

我想提示用户他们想要选择哪个 Chris。在这样做时,我有以下 for..each 代码

我的问题之一是如何完成以下行的内容

目前的输出是

我需要进行哪些更改以确保该值实际写入值?

编者注:问题结果与此处发布的代码无关,原则上确实有效。