Авторизация



Теги сайта



0х0000007b 1c access control list acl activation active directory ad roles add route adexplorer apache authentication to zabbix bare metal recovery bg zsh bicycle books bruteforce ccna centos centos packet certificate change net adapter name chap chkrootkit chmod cinnamon cisco class clipboard cmd configuring cpu cores cron crontab csc custom object cut cvsup cvsup-without-gui db dekorator dev null 2 1 dhcp dhcp reservation disable ipv6 diskpart dism django dns domain naming master domain roles download download powershell enable routing on windows enabled encapsulation english english language esx eventlog fail2ban fastest_cvsup fedora fg zsh field formatdatabase freebsd fsmo get-aduser hardware https hyper-v idioms iis inheritance iperf iptables iscsi jobs kernel panic ldap ldap аутентификация zabbix limit lingualeo linux mcitp mcsa memory check method microsoft mod_ssl mount mssql mysql mysql user password netcache network network config network load balance cluster network scripts nginx nlb num lock numlock oop openssl pap partition pdc permissions pfx php pipeline pkg_version polymorphism ports upgrade portupgrade posix powershell ppp puppet pwdlastset python rdp regedit registry remote enable restrictions reverse proxy rhel rid rope jumping bridge мост прыжок высота route add route freebsd routing protocol rpm sc sc sdset sc sdshow schema scope script output secure web security service permissions services session set dns servers set ip address sftp shell script show variables snmp sound scheme sounds speed ssh ssl standard-supfile subinacl supfile switch switchport sync syncronization task sсheduler tempdb tripplite monitoring tweaks unix user must change password at next logon utf8 vim vlan vmware w32tm web windows windows 2003 r2 windows 2008 r2 windows firewall windows server windows server 2012 windows server backup windows service permissions windows пингалка winre wsus xargs xrdp yum zabbix zabbix external check zabbix ldap authentication zsh автоматическое обновление портов freebsd автономные файлы активация английский язык база данных безопасность active directory буфер вело велосипед видео включение роутинга в windows внешняя проверка zabbix вредоносное программное обеспечение posix задание двумерного массива звуки звуковая схема идиомы иероглифы киев кодировка командная строка конфигурация сети маршрутизация маршруты в freebsd маршруты в redhat linux область обновление портов ограничения windows основные команды пакеты centos перевод перенос планировщик задач покатушки полет над днепром проблемы кодировки протокол путь развития в it разрешения служб windows регистрируем cmd скриптом недоступность хоста реестр резервирование ip скриптом роли домена русские символы синхронизация скачать скачать powershell скачать книгу скорость сети списки контроля доступа тарзанка твики фоновые процессы цикл mssql

Главная страница Microsoft POWERSHELL
Не отображать на экране вывод работы скрипта PS Печать

Избавиться от ненужных логов работы скрипта на экране поможет командлет Out-Null (PowerShell аналог перенаправлению [> /dev/null 2>&1] из Linux]

PS D:\> .\script.Ps1 | Out-Null # что бы не было в скрипте, вывода на экран не последует и скрипт выполнится в "quiet" режиме
 
Операторы сравнения в PowerShell Печать
По умолчанию все операторы сравнения не являются чувствительными к регистру.
-eq Equal Равно
-ne Not equal Не Равно
-ge Greater than or equal Больше или Равно
-gt Greater than Больше
-lt Less than Меньше
-le Less than or equal Меньше или Равно
-like Wildcard comparison Использование символов подстановки для поиска соответствия образцу
-notlike Wildcard comparison Использование символов подстановки для поиска несоответствия образцу
-match Regular expression comparison Использование регулярных выражений для поиска соответствия образцу
-notmatch Regular expression comparison Использование регулярных выражений для поиска несоответствия образцу
-replace Replace operator Заменяет часть или все значение слева от оператора
-contains Containment operator Определение, содержит ли значение слева от оператора значение справа. В отличие от предыдущих операторов, результатом является булево значение
-notcontains Containment operator Определение того, что значение слева от оператора не содержит значение справа. Результатом является булево значение

 

Для сравнения с учетом регистра к команде подставляется префикс "c". Для примера, оператор -eq с зависимостью от регистра изменяется на "-ceq".

Для явно заданного независящего от регистра сравнения к команде подставляется префикс "i". Пример: оператор -replace без зависимости от регистра будет -ireplace

Типы

-is Является типом
-isnot Не является типом
-as Как тип, без ошибки если возникает неудача преобразования

Логические операторы PowerShell

-and Оба условия должны быть истины, чтобы выражение было истинно
-or Одно или оба условия должны быть истины, чтобы выражение было истинно
-xor Одно условие должно быть истинно, а второе должно иметь значение "ложь", чтобы выражение было истинно
-not Указанные условия должны иметь значение "ложь", чтобы выражение было истинно
! Указанное условие должно иметь значение "ложь", чтобы выражение было истинно

 

Примеры

$myVar -is "String"
$myVar -eq 123
$myVar -ceq $myVar2
"abcdef" -like "abc*"
"abcdef" -replace "dEf","xyz"
$myVar1 -is "String" -and $myVar2 -is "Int"
(1 -eq 1) -and -not (2 -gt 2) 
 
Узнать свободное место на дисках Печать

Как с помощью PowerShell получить утилизацию дисковой подсистемы на локальном или удаленном/ых компьютерах? Ответ ниже:

PS C:\> Get-WmiObject Win32_LogicalDisk -Filter "DriveType=3" -Computer localhost | Select SystemName,DeviceID,@{Name="size(GB)";Expression={"{0:N1}" -f($_.size/1gb)}},@{Name="freespace(GB)";Expression={"{0:N1}" -f($_.freespace/1gb)}} | Format-Table -AutoSize # скрипт получит свободное место на локальном компьютере
PS C:\> Get-WmiObject Win32_LogicalDisk -Filter "DriveType=3" -Computer (Get-Content hostlist.txt) | Select SystemName,DeviceID,@{Name="size(GB)";Expression={"{0:N1}" -f($_.size/1gb)}},@{Name="freespace(GB)";Expression={"{0:N1}" -f($_.freespace/1gb)}} | Format-Table -AutoSize # скрипт получит свободное место на компьютерах из списка, который предварительно сохранен в файл "hostlist.txt"

 

В дополнение ниже представлена скрипт-функция PowerShell, некий аналог команды df из линукса:

Function Get-DiskFreeSpace {
    $wmiq = "Select * From Win32_LogicalDisk Where Size != Null
    And DriveType=2 Or DriveType=3 Or DriveType=4 Or DriveType=5"

    Function Format-HumanReadable {
        param ($size)
        switch ($size) {
            {$_ -ge 1PB}{"{0:#'P'}" -f ($size / 1PB); Break}
            {$_ -ge 1TB}{"{0:#'T'}" -f ($size / 1TB); Break}
            {$_ -ge 1GB}{"{0:#'G'}" -f ($size / 1GB); Break}
            {$_ -ge 1MB}{"{0:#'M'}" -f ($size / 1MB); Break}
            {$_ -ge 1KB}{"{0:#'K'}" -f ($size / 1KB); Break}
            default {"{0}" -f ($size) + "B"}
        }
    }

    Get-WmiObject -Query $wmiq |
    Format-Table -AutoSize @{Label="Vol";Expression={$_.DeviceID}},`
    @{Label="Size";Expression={Format-HumanReadable `
    $_.Size};Align="Right"},`
    @{Label="Used";Expression={Format-HumanReadable `
    (($_.Size)-($_.FreeSpace))};Align="Right"},`
    @{Label="Avail";Expression={Format-HumanReadable `
    $_.FreeSpace};Align="Right"},`
    @{Label="Use%";Expression={"{0:#}" -f ((($_.Size)-($_.FreeSpace))`
    /($_.Size) * 100)};Align="Right"},@{Label="Type"`
    ;Expression={$_.FileSystem};Align="Center"}
}

PS C:\> Get-DiskFreeSpace # после выполнения скрипта пишем наш новый командлет (вызываем функцию)

Vol Size Used Avail Use% Type
--- ---- ---- ----- ---- ----
C:   30G  17G   13G   57 NTFS
D:   82G   6G   76G    7 NTFS
E:     B   0B     B          

 
<< Первая < Предыдущая 11 12 13 14 15 16 17 18 19 20 Следующая > Последняя >>

Страница 15 из 20
Главная страница Microsoft POWERSHELL