Функции в PowerShell

Содержание
Пример
$profile: Конфигурация
Запуск определённого .exe файла
Дождаться установки Python
Похожие статьи

Пример

Функция, которая будет перемещать пользователя в определённую директорию

function andrei { set-location "C:\Users\Andrei" }

Если в функции используется путь с пробелами, их можно экранировать с помощью символа `

function appbin { set-location C:\Program` Files\App\bin }

Теперь выполнив команду andrei пользователь попадёт в домашнюю директорию Andrei

РЕКЛАМА от Google. Может быть недоступна в вашем регионе.

Конец рекламы от Google. Если в блоке пусто считайте это рекламой моей телеги

Конфигурация

Для того чтобы алиасы и функции сохранялись после перезагрузки их нужно добавить в файл с настройками профиля PowerShell

Его расположение можно узнать командой

$profile

C:\Users\Andrei\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

Если $profile показывает несуществующий путь, то файл с настройками можно создать вручную.

New-Item -Path $profile -Force -ItemType "file"

Затем файл можно открыть и отредактировать в блокноте

notepad $profile

function andrei { set-location "C:\Users\Andrei" }

PowerShell нужно перезапустить.

Запуск определённого .exe файла

Иногда бывает удобно запускать .exe файлы с помощью функций. Особенно, когда путь до них неудобно писать в терминал. Например, они из Program Files (x86)

Пример функции, которая запускает Python которым пользуется TestComplete в интерактивном режиме.

notepad $profile

function tcpython { Start-Process -FilePath "C:\Program Files (x86)\SmartBear\TestComplete 15\x64\Bin\Extensions\Python\Python310\python.exe" }

Дождаться установки Python

Пример скрипта PowerShell, который использует кастомную функцию для проверки завершения установки Python.

Может пригодиться, если установка запущена другим скриптом а вам нужно дождаться завершения прежде чем делать новые действия.

function Is-Py-Installed { Write-Output "Is-Py-Installed is running" $installed = Get-Command python -ErrorAction SilentlyContinue if ($installed) { $version = python --version 2>&1 Write-Host "Python version: $version" -f Green return 1 } else { Write-Host "Python is not yet installed on this device." -f Yellow return 0 } } $py_installed = 0 while ($py_installed -eq 0) { Write-Output "while loop is running" $py_installed = Is-Py-Installed Start-Sleep -Seconds 3.0 }

Похожие статьи
Windows
PowerShell
Alias
Запросы к REST API
Пользователи
Сеть
Установка
Файлы
Функции
Циклы
Ошибки PowerShell

РЕКЛАМА хостинга Beget, которым я пользуюсь более десяти лет

Изображение баннера

Конец рекламы хостинга Beget, который я всем рекомендую.

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: