2017-09-23 4 views
0

から実行する必要があります。 powerhsell cliから直接実行するとうまく動作します。実行しようとすると:複数のPowerShellのコマンドは、私はこの1つのような単一のラインPowerShellスクリプトを実行する必要があり、コマンドライン

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

コマンドラインからエラーが表示されます。 PowerShellスクリプトの実行に関する制限ポリシーを変更できないため、.ps1ファイルの形式でスクリプトから実行することはできません。

Anybodoyはコマンドラインから適切に実行するために何を変更する必要があるかを指摘できますか?バッチに

'{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)" 

かに時間を得るために引用し、適切な/あなたは何の中間変数と一つだけのコマンドを必要としない括弧付き

感謝

+1

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

答えて

0

バッチ変数:

:: 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 
関連する問題