2017-09-23 2 views
0

에서 실행해야합니다 :여러 파워 쉘 명령은 내가 이와 같은 한 줄 PowerShell 스크립트를 실행하는 데 필요한 명령 줄

$a = Get-Content test.tmp; $b = [timespan]::fromseconds($a); "{0:HH:mm:ss,fff}" -f ([datetime]$b.Ticks) 

명령 줄에서. powerhsell cli에서 직접 실행하면 잘 작동합니다. 실행하려고 할 때 :

powershell "$a = Get-Content test.tmp; $b = [timespan]::fromseconds($a); "{0:HH:mm:ss,fff}" -f ([datetime]$b.Ticks)" 

명령 줄에서 오류가 발생합니다. PowerShell 스크립트를 실행하는 것과 관련된 제한 정책을 변경할 수 없으므로 .ps1 파일 형태로 스크립트에서 실행할 수 없습니다.

Anybodoy가 명령 줄에서 올바르게 실행하기 위해 변경해야하는 점을 알려줄 수 있습니까?

많은 감사 적절한는 인용와

+1

'powershell -Command "$ a = Get-Content test.tmp; $ b = [timespan] :: fromseconds ($ a); \ "{0 : HH : mm : ss, fff} \"-f ([datetime] $ b.Ticks) "' – PetSerAl

답변

0

/더 중간 변수와 하나 개의 명령이 필요하지 괄호 : 일괄

'{0:HH:mm:ss,fff}' -f ([datetime]([timespan]::fromseconds((Get-Content test.tmp))).Ticks) 

:

powershell -C "'{0:HH:mm:ss,fff}' -f ([datetime]([timespan]::fromseconds((Get-Content test.tmp))).Ticks)" 

아니면에 시간을 얻을 수를 배치 변수 :

:: Q:\Test\2017\09\23\SO_46379453.cmd 
@Echo off 
For /f "tokens=1*" %%A in (
    'powershell -C "\"{0:HH:mm:ss,fff}\" -f ([datetime]([timespan]::fromseconds((Get-Content test.tmp))).Ticks)" ' 
) Do Set "Duration=%%A,%%B" 
set Duration 
관련 문제