相关疑难解决方法(0)

在PowerShell中忽略输出的更好(更干净)的方法是什么?

假设您有一个返回某些内容的方法或cmdlet,但您不想使用它而您不想输出它.我找到了这两种方式:

Add-Item > $null

[void]Add-Item

Add-Item | Out-Null
Run Code Online (Sandbox Code Playgroud)

你用什么?哪种更好/更清洁?为什么?

powershell null void

121
推荐指数
5
解决办法
10万
查看次数

这个0来自哪里?

我编写了一个脚本,将角色/成员添加到数据库/多维数据集中.

出于某种原因,每次添加角色/成员时,在控制台上输出0.它来自哪里?我开始怀疑Analysis.Role属性有一个默认的0输出,因为当我的if语句运行并且该成员已经存在时,所以没有添加角色/成员,不输出0.仅当角色不存在时才输出0,因为它正在添加角色.这就是我如何将其缩小到这个结论.

但如果是这样,我怎么能压制这个"0"?

$ErrorActionPreference = 'SilentlyContinue' # suppress all exceptions

$as = New-Object Microsoft.AnalysisServices.Server  
$as.Connect("$server")

$db = $Analysis_Server.Databases.FindByName($CUBE)

$ROLE = $db.Roles.FindByName($CUBE_ROLE)
$member = "member1"

$memberExists = $false

if ($ROLE) {
    # if role exists already...check if group exists, or just add group
    $memberExists = $ROLE.Members.GetEnumerator() |
                    ?{$_.name -like $member} |
                    select -First 1 |
                    %{$True}

    if ($memberExists) { 
        Write-Host "already exists!"
    } else {
        $ROLE.Members.Add($member)
        $ROLE.Update()
    }

    $error.Clear()
    if ($error[0]) {
        Write-Host ("`r`nError Adding Group!" + "$($error[0])`r`n")
    } …
Run Code Online (Sandbox Code Playgroud)

powershell ssas

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

标签 统计

powershell ×2

null ×1

ssas ×1

void ×1