2017-02-14 16 views
0

Я поворачиваюсь в кругах и после долгих исследований, я ищу ваш опыт в этом маленьком корпусе. Я могу отправить результат сценария PS1 в текстовый файл, но не в переменную пакетного файла.Результат переменной в пакетном файле

сценарий

Param(
[string]$Fic 
) 

$EmplacementFichier = [string] 

$EmplacementFichier = "$Fic" 
$MonFichier = get-content -totalcount 1 $EmplacementFichier 
$Resultat = $MonFichier.SubString(92,12) 

$RnmFic = "EXANTE_$resultat.REPRESTI.txt" 
rename-item $EmplacementFichier -newname $RnmFic 

Write-Output $RnmFic 

Запущенный из пакетного файла:

powershell D:\Rnm-Exante.ps1 -fic "%NOMFIC%" > %Fichier% 

создает файл «% Fichier%» на месте сценария, но не обеспечивает переменную партии.

+0

является ожидаемый вывод только одной строки? – Stephan

+0

Да, результатом является имя файла – Rakhann

ответ

1

из партии, вы можете прочитать файл:

<file.ext set /p "var="` 

или вы можете получить выход вашего Powershell скрипт непосредственно (не перенаправляет в файл в данном случае):

for /f "delims=" %%a in ('powershell D:\Rnm-Exante.ps1 -fic "%NOMFIC%"') do set "var=%%a"