2016-07-12 31 views
0

バックグラウンドで実行しているPowerShellスクリプトに問題があります。以下は私の命令です。 >Powershell.exe -File C:\testFolder\script.ps1 -WindowStyle Hidden。何も起こりません。スクリプトは動作しません。このスクリプトは、Windows PowerShell ISEでうまく動作します。Powershellスクリプトをバックグラウンドで実行しているウィンドウを非表示にする

以下は私のPowerShellスクリプトです。一方、コマンドプロンプトからの出力だけ「テスト」のWindows PowerShell ISEでPowerShellスクリプトを実行する

$watcher = New-Object System.IO.FileSystemWatcher 
$watcher.Path = "C:\ProgramData\" 
$watcher.Filter = "output.txt"; 
$watcher.EnableRaisingEvents = $true 
$args = “$Server $FolderName” 
$command = “cmd /C cscript .\VBScript.vbs $args” 

$action = { $path = $Event.SourceEventArgs.FullPath 
      $changeType = $Event.SourceEventArgs.ChangeType 
      $logline = "$(Get-Date), $changeType, $path" 
      Add-content "D:\log.txt" -value $logline 
      invoke-expression $command 
Write-Host "Test2" 
      }  
Write-Host "Test" 
$created = Register-ObjectEvent $watcher "Created" -Action $action 
$changed = Register-ObjectEvent $watcher "Changed" -Action $action 
$deleted = Register-ObjectEvent $watcher "Deleted" -Action $action 
$renamed = Register-ObjectEvent $watcher "Renamed" -Action $action 

は、(テストとTest2を)の両方を出力します。

+0

実行ポリシーでスクリプトを実行できますか? 'Powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File C:\ testFolder \ script.ps1'を試してください。 –

+0

' -WindowStyle Hidden'パラメータを省略すると動作しますか? – vonPryz

+0

残念ながら、それはしません。私は環境変数でpowershell.exeパスを確認しました。しかし、ちょうど動作していないようです。エラーもありません。 – NeelDeveloper

答えて

0

ああ。最後にwhile ($true) {}を追加する必要がありました。

関連する問題