Отладочный вывод Powershell - PullRequest
1 голос
/ 24 января 2012

У меня есть скрипт powershell, который создает некоторые ZIP-файлы DotNetZip при постоянном соединении на нескольких серверах, а затем использует Start-BitsTransfer для перемещения ZIP-файлов с удаленных серверов на локальные.

Я выполняю в значительной степениодин и тот же скрипт на двух разных серверах, на одном он практически ничего не выводит на экран.С другой стороны, он выводит LOT - бинарный материал.Это потому, что на сервере, который выводит всю эту информацию, включена какая-то настройка отладки?Есть ли способ, которым я могу отключить его?Я бы предпочел, чтобы он был более чистым, как первый сервер, на котором запущен скрипт.

Спасибо!

-Jim

Вот почти весь скрипт (без моих имен серверов.в массиве $ webServers:

Import-Module BitsTransfer

        foreach($i in $webServers) {

                if (!(Test-Path -path \\$i\d$\newDeploy)) {
                    New-Item \\$i\d$\newDeploy -type directory
                }
                if (!(Test-Path -path \\$i\d$\newDeploy\backup)) {
                    New-Item \\$i\d$\newDeploy\backup -type directory
                }   
                if(!(Test-Path \\$i\d$\newDeploy\Ionic.Zip.dll)) {
                    Start-BitsTransfer -Source \\$webDeployServer\d$\newDeploy\Ionic.Zip.dll -Destination \\$i\d$\newDeploy
                }

        }

        foreach($i in $webServers) {

            $sessionForI = New-PSSession -computername $i
            Invoke-Command -Session $sessionForI -ScriptBlock {

                if ((Test-Path D:\\newDeploy\\backup\\OffM.zip)) {
                    Remove-Item D:\\newDeploy\\backup\\OffM.zip
                }
                [System.Reflection.Assembly]::LoadFrom("D:\\newDeploy\\Ionic.Zip.dll");
                $zipfile = new-object Ionic.Zip.ZipFile
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\OffM", "OffM",1)
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\PaEnterprise", "PaEnterprise",1)
                $zipfile.Save("D:\\newDeploy\\backup\\OffM.zip")
                $zipfile.Dispose()

                if ((Test-Path D:\\newDeploy\\backup\\Others.zip)) {
                    Remove-Item D:\\newDeploy\\backup\\Others.zip
                }
                [System.Reflection.Assembly]::LoadFrom("D:\\newDeploy\\Ionic.Zip.dll");
                $zipfile = new-object Ionic.Zip.ZipFile
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\MstrInt-PO", "MstrInt-PO",1)
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\Maint", "Maint",1)
                $zipfile.Save("D:\\newDeploy\\backup\\Others.zip")
                $zipfile.Dispose()

                if ((Test-Path D:\\newDeploy\\backup\\PPO.zip)) {
                    Remove-Item D:\\newDeploy\\backup\\PPO.zip
                }
                [System.Reflection.Assembly]::LoadFrom("D:\\newDeploy\\Ionic.Zip.dll");
                $zipfile = new-object Ionic.Zip.ZipFile
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\HC", "HC",1)
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\PaOn", "PaOn",1)
                if($i -eq 'PYRALNWSP02V') {
                    $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\HearPl", "HearPl",1)
                } else {
                    $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\HearPaPlu", "HearPaPlu",1)
                }
                $zipfile.Save("D:\\newDeploy\\backup\\PPO.zip")
                $zipfile.Dispose()

                if ((Test-Path D:\\newDeploy\\backup\\TiMan.zip)) {
                    Remove-Item D:\\newDeploy\\backup\\TiMan.zip
                }
                [System.Reflection.Assembly]::LoadFrom("D:\\newDeploy\\Ionic.Zip.dll");
                $zipfile = new-object Ionic.Zip.ZipFile
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\TiManView", "TiManView",1)
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\TiManOnline", "TiManOnline",1)
                $e = $zipfile.AddSelectedFiles("name != '*.e2e'","D:\inetpub\wwwroot\TiManPOne", "TiManPOne",1)
                $zipfile.Save("D:\\newDeploy\\backup\\TiMan.zip")
                $zipfile.Dispose()

            }
            remove-PSSession -session $sessionForI

        }
        foreach($i in $webServers) {
            if(!(Test-Path -path D:\newDeploy\backup\$i)) {
                New-Item D:\newDeploy\backup\$i -type directory
            }
            Start-BitsTransfer -Source \\$i\d$\newDeploy\backup\OffM.zip -Destination D:\newDeploy\backup\$i
            Start-BitsTransfer -Source \\$i\d$\newDeploy\backup\Others.zip -Destination D:\newDeploy\backup\$i
            Start-BitsTransfer -Source \\$i\d$\newDeploy\backup\PPO.zip -Destination D:\newDeploy\backup\$i
            Start-BitsTransfer -Source \\$i\d$\newDeploy\backup\TiMan.zip -Destination D:\newDeploy\backup\$i
        }
        foreach($i in $webServers) {
            Remove-Item \\$i\d$\newDeploy\backup\OffM.zip
            Remove-Item \\$i\d$\newDeploy\backup\Others.zip
            Remove-Item \\$i\d$\newDeploy\backup\PPO.zip
            Remove-Item \\$i\d$\newDeploy\backup\TiMan.zip
        }
        [System.Reflection.Assembly]::LoadFrom("D:\\newDeploy\\Ionic.Zip.dll");
        $directoryToZip = "D:\newDeploy\backup"
        $date = get-date -format "M-d-yyyy"
        $zipfile = new-object Ionic.Zip.ZipFile
        $e = $zipfile.AddSelectedFiles("name != '*.e2e'",$directoryToZip, "",1)
        $zipfile.Save("D:\\newDeploy\\backup\\"+$date+"_WEBbackup.zip")
        $zipfile.Dispose()

1 Ответ

1 голос
/ 24 января 2012

Существует такая настройка отладочных сообщений - $DebugPreference

По умолчанию это SilentlyContinue.Посмотрите, установлен ли он на что-то другое.

Было бы полезно, если бы вы также показали разницу в выходных данных.Это также может быть подробный вывод, управляемый $VerbosePreference

Узнайте здесь о параметрах предпочтений - http://technet.microsoft.com/en-us/library/dd347731.aspx

Обновление:

Добавить [void] before [System.Reflection.Assembly]::LoadFrom, чтобы вывод не загрязнял вывод сценария.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...