Логические литералы в PowerShell
каковы логические литералы в PowerShell?
3 ответа:
$trueи$false.те хоть и являются константами,. Для логических значений не существует литералов уровня языка.
в зависимости от того, где вы нуждаетесь в них, вы также можете использовать все, что принуждение к логическому значению, если тип должен быть логическим, например, в вызовах методов, которые требуют булевых (и не имеют конфликтующей перегрузки) или условных операторов. Например, большинство ненулевых объектов имеют значение true.
null, пустые строки, пустые массивы и количество0- Это ложь.
просто, чтобы добавить больше информации: логические литералы
$trueи$falseтакже работает как при использовании в качестве параметров командной строки для сценариев PowerShell(PS). Для приведенного ниже сценария PS, который хранится в файле с именемinstallmyapp.ps1:param ( [bool]$cleanuprequired ) echo "Batch file starting execution."теперь, если я должен вызвать этот файл PS из командной строки PS, вот как я могу сделать:
installmyapp.ps1 -cleanuprequired $trueили
installmyapp.ps1 -cleanuprequired 1здесь
1и$trueэквивалентны. Кроме того,0и$falseесть аналог.Примечание: никогда не ожидайте, что строковый литерал
trueможет автоматически преобразовываться в boolean. например, если я запускаю ниже команды:installmyapp.ps1 -cleanuprequired trueон не может выполнить скрипт с ошибкой ниже:
не удается обработать преобразование аргумента по параметру 'cleanuprequired'. Не удается преобразовать значение " система.Строка" тип системы".Логический." Логический параметры принимают только логические значения и числа, такие как $True, $False, 1 или 0.