Вопрос

Есть ли способ определить переменную в PowerShell, поэтому, когда я открываю новое окно PowerShell, она сохранит то же значение?

Мне понадобится эта переменная, чтобы сохранить его значение, потому что мне нужно время от времени перезагрузить мой сервер, и я не хочу терять эти значения.

Это было полезно?

Решение

Вы рассматривали другие альтернативные источники для хранения переменной? Переменные в PowerShell, как правило, предназначены для сохранения только до самого сессии PowerShell. Однако есть несколько других источников, которые PowerShell может легко запросить, которые призваны сохраняться дольше. В частности, реестр и файловая система.

Для переменной, предназначенной для продолжения перезагрузки, я хранил бы ее в реестре, а затем использовал PowerShell, чтобы запросить это значение (возможно, кэш в переменной сеанса).

Другие советы

Хранить:

$variable|export-clixml -path $Location

Чтобы получить:

$variable = import-clixml -path $Location

Поместите это в функцию, если хотите, что -то вроде:

function LoadTHEvariable($location)
{
    $global:variable = import-clixml -path $Location
}

$ Location, очевидно, содержит место в файловой системе, где вы хотите сохранить переменную.

Вы можете хранить свои данные в своей PowerShell Профиль.

Рассмотрите возможность использования переменной среды.

Переменная - это контейнер, и вы можете создать рассказ PowerShell, что вы хотите, чтобы этот контейнер был файлом. $ {c: variabletokeep.txt} = 'Я хочу сохранить это значение'

Каждый раз, когда вы хотите получить значение внутри, просто вызовите переменную $ {c: variabletokeep.txt}

Вы можете поместить этот файл в папку Share или скопировать его между машинами, и вы можете прочитать и написать эту переменную на любой машине.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top