Страница 1 из 1

powershell и функции

Добавлено: 2012-05-26 9:27:38
fordiego
Доброго времени. Пишу скрипт смысл которого вести лог с датой и временем события. Соответственно для этого необходимо создать функцию типа так:

Код: Выделить всё

function date_time
{
$date = Get-Date -format yyyy-MM-dd
$time = Get-Date -format T
}
и где-нибудь в коде вызываем это функцию типа так

Код: Выделить всё

(date_time)
echo " $date $time текущая дата и время"
тесть функция каждый раз при вызове присваивает новые значения переменным $date и $time

так вот в баше такая логическая конструкция прекрасно отрабатывает в powershell не работает (((
подскажите как сделать?

Re: powershell и функции

Добавлено: 2012-05-28 13:26:42
Гость
При вызове функции создается своя область видимости,в данном случае локальная,поэтому доступ к переменным Date и Time,получить нельзя,т.к они уничтожаются.

Поэтому либо меняем область видимости,скажем на global:

Код: Выделить всё

function date_time
{
   $global:date = Get-Date -format yyyy-MM-dd
   $global:time = Get-Date -format T
} 

Либо используем dot-source(точка обязательна):

Код: Выделить всё

. date_time