問題タブ [start-process]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - ローカル システム アカウント経由で powershell を使用してクレジットを昇格する
Jenkins Job 経由で powershell を使用してコードをデプロイしたいと考えています。これは、powershell ise で正常に動作します。
しかし、ローカル システムを使用する Jenkins から実行すると、次のエラー メッセージが表示されます。
変更すると、Jenkins サービスを別のアカウントに変更すると機能します。ローカル システム アカウントで昇格されたアクセス許可が機能しないのはなぜですか?
注: test.ps1 の唯一のコードは New-Item c:\scripts\new_file.txt です。
powershell - start-process を使用してシリアル化可能なオブジェクトを PowerShell スクリプトに渡す方法はありますか?
PowerShell ジョブについては知っていますが、start-process を使用して、シリアライズ可能なオブジェクトを新しい powershell プロセスに渡したいと考えています。これを行う方法はありますか?
start-process を使用すると、文字列引数リストを提供する必要があるようですが、それではうまくいきません。あるプロセスから別のプロセスに PSCredential を取得しようとしています (または SecureString のいずれかを取ります)。多分これはセキュリティを回避します。
更新-他の人からの助けを見た後に使用したソリューションを追加します(@PetSerAlのソリューションを使用)
親スクリプトと子スクリプトの 2 つのテスト スクリプトを作成しました。親スクリプトが子スクリプトを呼び出します。
親スクリプト:
子スクリプト:
windows - PowerShell: Start-Process で -Verb と -RSO の両方を使用できないのはなぜですか?
PowerShell の初心者はこちら。Start-Process
昇格された特権で ( 経由で-Verb RunAs
) 実行し、結果をログに記録しようとしています ( 経由-RSO output.txt
)。どういうわけか、両方を受け入れません。これは正常に機能します。たとえば、次のようになります。
この:
しかし、これではありません:
実行Start-Process -?
すると、私の疑いが検証されるようです。-RedirectStandardOutput
と-Verb
が別のセクションにリストされていることに注意してください。
なぜそれらは相互に排他的であり、これを回避するにはどうすればよいですか?
ありがとう。
powershell - Start-Process -Wait が機能しない
別の .exe ファイルを呼び出す powershell スクリプトがあります。
Start-Process ".\file.exe" -wait
file.exe は単純なウィンドウで、いくつかのメッセージが表示され、.exe を閉じるためのボタンが 1 つだけあります。
これは、実行されるメイン スクリプトの最初の行です。私は待って、ユーザーが閉じるをクリックして残りのコードを続行できるようにしたいと考えています。
ただし、プロセスは開始されますが、メイン プログラムは待機せず、残りのコードの実行を開始します。
他に何かする必要がありますか?
powershell - PowerShell: メモ帳で既存の variables.ps1 ファイルに書き込み、追加された variables.ps1 を同じ場所に保存します。
variables.ps1 から動作するいくつかの PowerShell スクリプトを作成しました。この変数は、インストールごとに変更する必要があります。スクリプトは単純な COPYOUT.PS1 を実行することから始まります。この PS1 は ISO ファイルからコピーし、ファイルを C:\PSscript に配置します。すべてのファイルがシステム上にあると、variables.ps1 が開きます。これで、PS1 を編集して保存できるようになります。
問題は、一度開くと保存できないことです。このスクリプトは同じ名前にする必要があります。これは、variables.ps1 を他のソフトウェア プログラムのインストールに使用する他のサーバーにコピーするためです。variables.ps1 を閉じたら、更新された variables.ps1 をリモート サーバーに送信して、COPYOUT.PS1 を終了する必要があります。
これを回避するにはどうすればよいですか?
私は調べました:
それが理にかなっていることを願っています。助けてくれてありがとう。
powershell - Powershell Start-Process がリモート マシンでプロセスを開始しない
アプリケーションを起動する必要がある部分に取り組んでおり、このアプリケーションはバックグラウンドで実行し続ける必要があります。以下のように Start-Process コマンドレットを試しました。
削除-PSSession $newsession
何が起こっているかというと、ターゲット マシンで cmd プロセスが開始されていることがわかりますが、すぐに消えてしまいます。そのプロセスを常に稼働させるためにここで何をすべきかわかりません。一方、Invoke-Expressionコマンドレットも試してみましたが、これにより、リモート マシンでプロセスが正常に開始されたことがわかりますが、powershell スクリプトは返されないため、Start-Process の使用を考えました。助言がありますか?
windows - リモート マシンでアプリケーションを起動して実行し続けると、powershell スクリプトはプロセスが完了するまで待機しません。
リモート マシンには Vesper.exe というアプリケーションがあります。私が今していることは、powershell セッションを使用してマシンにリモートでログインすることです。
要件: リモート マシンでアプリケーションを起動する必要があり、powershell スクリプトの実行が終了した後もアプリケーションを実行し続ける必要があります。
私は2つの方法を試しましたが、要約は次のとおりです。
- Invoke-Command: このコマンドレットを使用してアプリケーションを起動すると、スクリプトが停止し、アプリケーションが最終的に停止するまで待機します
- Start-Process: このコマンドレットを使用すると、アプリケーションは実行を開始しますが、すぐに終了します。これを見つけた理由は、コマンドレットRemove-PSSessionを使用していたのに、 Exit-PSSessionを使用してリモート マシンでプロセスを維持する必要があることを発見したためです。しかし、これに関する問題は、ビルドの実行が完了すると (または PowerShell ウィンドウを閉じると)、リモート マシン上のアプリケーションが停止することです。ここで何をすべきかわかりません。
以下は、powershell コードです。