Провера инсталиране верзије ПоверСхелл-а на вашем рачунару

PowerShell

Увод у идентификацију ПоверСхелл верзија

ПоверСхелл, оквир за аутоматизацију задатака и управљање конфигурацијом, је суштински алат за системске администраторе и напредне кориснике. Да бисте искористили његов пуни потенцијал, кључно је знати која је верзија инсталирана на вашем рачунару, јер различите верзије нуде различите функције и могућности.

Овај чланак ће вас водити кроз кораке за одређивање инсталиране верзије ПоверСхелл-а на вашем систему, обезбеђујући да можете да приступите његовим најновијим функцијама или решите проблеме са компатибилношћу. Било да сте нови у ПоверСхелл-у или сте искусан корисник, разумевање ваше тренутне верзије је први корак ка ефикасном коришћењу.

Цомманд Опис
Get-Command Преузима све команде које су инсталиране на систему, укључујући цмдлет команде, функције, токове посла, псеудониме и извршне датотеке.
$PSVersionTable Уграђена променљива у ПоверСхелл-у која приказује тренутну верзију ПоверСхелл-а.
subprocess.run Извршава наведену команду у подпроцесу, хватајући њен излаз за даљу обраду у Питхон-у.
re.search Претражује стринг за подударање користећи одређени образац регуларног израза у Питхон-у.
command -v Проверава да ли је одређена команда доступна на систему, која се обично користи у Басх скриптама.
pwsh Позива ПоверСхелл Цоре у командној линији или скрипти.
wine Извршава Виндовс апликације на оперативним системима сличним Уник-у, који се овде користе за покретање Виндовс ПоверСхелл-а преко Вине-а.

Како функционишу скрипте за одређивање инсталиране верзије ПоверСхелл-а

ПоверСхелл скрипта почиње коришћењем цмдлет да бисте проверили да ли је ПоверСхелл инсталиран на систему. Проверава оба (ПоверСхелл Цоре) и (Виндовс ПоверСхелл). Ако се било која команда пронађе, она преузима информације о верзији из $PSVersionTable.PSVersion променљива и исписује верзију. Ако ниједна наредба није пронађена, она показује да ПоверСхелл није инсталиран. Овај приступ обезбеђује компатибилност са обе верзије ПоверСхелл-а, што га чини свеобухватним решењем за кориснике са различитим подешавањима.

Питхон скрипта користи функција за извршавање ПоверСхелл команди и снимање њиховог излаза. Прво покушава да покрене команду да проверите да ли има Виндовс ПоверСхелл. Ако ово не успе, покушава се за ПоверСхелл Цоре. Тхе re.search функција се користи за издвајање броја верзије из излаза команде помоћу регуларног израза. Ова скрипта је посебно корисна за вишеплатформска окружења где су доступни и Питхон и ПоверСхелл.

Басх скрипта почиње провером да ли је ПоверСхелл Цоре инсталиран помоћу команда. Ако се пронађе, покреће команду да бисте добили верзију. Ако ПоверСхелл Цоре није пронађен, он проверава Виндовс ПоверСхелл преко Вине-а помоћу команде и извршава wine powershell.exe -Command '$PSVersionTable.PSVersion' ако је на располагању. Ова скрипта је корисна за системе сличне Уник-у где корисници могу имати ПоверСхелл Цоре или користити Вине за покретање Виндовс ПоверСхелл-а.

Све у свему, ове скрипте пружају робустан скуп алата за одређивање инсталиране верзије ПоверСхелл-а у различитим оперативним системима и окружењима. Они користе специфичне команде као што су , , и да постигну свој циљ, демонстрирајући флексибилност и моћ скриптовања у задацима системске администрације.

Препознавање инсталиране верзије ПоверСхелл-а преко ПоверСхелл скрипте

ПоверСхелл Сцрипт

# Check if PowerShell is installed and determine its version
if (Get-Command -Name pwsh -ErrorAction SilentlyContinue) {
    $version = $PSVersionTable.PSVersion
    Write-Output "PowerShell Core is installed. Version: $version"
} elseif (Get-Command -Name powershell -ErrorAction SilentlyContinue) {
    $version = $PSVersionTable.PSVersion
    Write-Output "Windows PowerShell is installed. Version: $version"
} else {
    Write-Output "PowerShell is not installed on this system."
}

Одређивање инсталиране верзије ПоверСхелл-а помоћу Питхон скрипте

Питхон Сцрипт

import subprocess
import re

def check_powershell_version():
    try:
        result = subprocess.run(['powershell', '-Command', '$PSVersionTable.PSVersion'],
                                capture_output=True, text=True)
        version = re.search(r'(\d+\.\d+\.\d+\.\d+)', result.stdout)
        if version:
            print(f"Windows PowerShell is installed. Version: {version.group(1)}")
        else:
            result = subprocess.run(['pwsh', '-Command', '$PSVersionTable.PSVersion'],
                                    capture_output=True, text=True)
            version = re.search(r'(\d+\.\d+\.\d+\.\d+)', result.stdout)
            if version:
                print(f"PowerShell Core is installed. Version: {version.group(1)}")
            else:
                print("PowerShell is not installed on this system.")
    except FileNotFoundError:
        print("PowerShell is not installed on this system.")

check_powershell_version()

Провера верзије ПоверСхелл-а на рачунару помоћу Басх скрипте

Басх Сцрипт

#!/bin/bash

# Check if PowerShell Core is installed
if command -v pwsh &> /dev/null
then
    version=$(pwsh -Command '$PSVersionTable.PSVersion.ToString()')
    echo "PowerShell Core is installed. Version: $version"
else
    # Check if Windows PowerShell is installed via Wine
    if command -v wine &> /dev/null && wine powershell.exe -Command '$PSVersionTable.PSVersion' &> /dev/null
    then
        version=$(wine powershell.exe -Command '$PSVersionTable.PSVersion.ToString()')
        echo "Windows PowerShell is installed via Wine. Version: $version"
    else
        echo "PowerShell is not installed on this system."
    fi
fi

Истраживање додатних метода за одређивање верзије ПоверСхелл-а

Још један користан метод за одређивање инсталиране верзије ПоверСхелл-а укључује проверу регистра, посебно на Виндовс системима. Регистар може да обезбеди директан начин да се идентификује верзија инсталираног Виндовс ПоверСхелл-а. Можете да упитате одређене кључеве регистратора да бисте пронашли ове информације. На пример, кључ може се приступити да бисте добили број верзије. Овај метод је посебно користан када треба да аутоматизујете процес на више машина у мрежи помоћу скрипте или смерница групе.

За кориснике мацОС-а и Линук-а, други приступ укључује коришћење менаџера пакета. На пример, можете користити на мацОС-у да проверите инсталирану верзију. На Линук-у, можете користити или у зависности од ваше дистрибуције. Ове команде менаџера пакета пружају детаљне информације о инсталираној верзији, што може бити кључно за администраторе система који управљају различитим окружењима. Овај метод осигурава да имате исправну верзију ПоверСхелл-а компатибилну са вашим скриптама и модулима.

Уобичајена питања и одговори о одређивању ПоверСхелл верзија

  1. Како могу да проверим верзију ПоверСхелл-а у скрипти?
  2. Користити команду у ПоверСхелл скрипти да проверите верзију.
  3. Постоји ли начин да проверите верзију ПоверСхелл-а преко командне линије на Виндовс-у?
  4. Да, отворите командну линију и откуцајте да видите верзију.
  5. Могу ли да проверим верзију ПоверСхелл-а на Линук-у?
  6. Да, можете користити или проверите информације о менаџеру пакета командама као што су .
  7. Како да пронађем верзију ПоверСхелл Цоре-а?
  8. Покрените команду у вашем терминалу.
  9. Која је разлика између Виндовс ПоверСхелл-а и ПоверСхелл Цоре-а?
  10. Виндовс ПоверСхелл је изграђен на .НЕТ Фрамеворк-у и само за Виндовс, док је ПоверСхелл Цоре на више платформи, изграђен на .НЕТ Цоре-у.
  11. Могу ли да инсталирам и Виндовс ПоверСхелл и ПоверСхелл Цоре?
  12. Да, оба се могу инсталирати на исти систем и користити независно.
  13. Како могу да аутоматизујем проверу верзије ПоверСхелл-а на више машина?
  14. Користите скрипту која користи да покренете проверу верзија на удаљеним машинама преко ПоверСхелл Ремотинг-а.
  15. Да ли је потребно ажурирати ПоверСхелл на најновију верзију?
  16. Иако није увек неопходно, ажурирање обезбеђује приступ најновијим функцијама и безбедносним побољшањима.

Одређивање инсталиране верзије ПоверСхелл-а је од суштинског значаја за потпуно искоришћење његових могућности. Коришћењем ПоверСхелл скрипти, администратори могу брзо да провере да ли је ПоверСхелл Цоре или Виндовс ПоверСхелл инсталиран и да преузму број верзије. Питхон и Басх скрипте нуде решења за више платформи, користећи команде као што су субпроцесс.рун и цомманд -в за проверу статуса и верзије инсталације. Поред тога, испитивање регистра у оперативном систему Виндовс или коришћење менаџера пакета на мацОС-у и Линук-у пружа алтернативне методе како бисте били сигурни да радите са исправном верзијом, олакшавајући боље управљање системом и компатибилност скрипти.