問題タブ [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.

0 投票する
5 に答える
22017 参照

powershell - リモート マシン上の Powershell Start-Process msiexec が機能しない

何らかの理由で、リモート マシンで呼び出しコマンドを実行すると、Start-Process msiexec が機能しません。調べたところ、psiexec の使用を推奨する人もいますが、リモート マシンで msi インストーラーを起動するために、普通の古い invoke-command を使用している人をたくさん見てきました。

これは私が現在使用しているコードです:

同じ方法を使用して、intallutil を使用してリモートでサービスをインストールしましたが、うまくいきました。スクリプティングはターゲット マシンとリモート処理で有効になっているため、すべてのアカウントで機能するはずです。両方のコンピューターの資格情報は同じですが、invoke-command と pssession の両方に資格情報を追加しようとしました。コードをローカルでテストしたところ、インストールは機能しました。リモートではそうではなく、エラーもありません。ターゲット マシンのタスク マネージャーで、msiexec が開始されていることを確認できますが、何も起こりません。ファイアウォールを無効にしようとしましたが、それでも何もしませんでした。& 演算子を使用して msiexec を開始しようとしましたが、まだ何もありません。

他に何を試すことができるかわかりません。

0 投票する
4 に答える
27613 参照

powershell - Powershell PSSession で Start-Process を使用してメモ帳を開く

リモート コンピューターで PSSession を作成し、その所有に入りました。そのセッション内から、start-process を使用してメモ帳を起動します。get-process コマンドと、リモート コンピューターの taskmgr を使用して、メモ帳が実行されていることを確認できます。ただし、プロセスの GUI 側は表示されません。これは私が使用してきたシーケンスです:

プロセスは実行中ですが、RDP でボックスに接続している間、メモ帳が開きません。サーバーからメモ帳を開くと、新しいメモ帳プロセスが開始されます。また、次のように動詞パラメーターを使用してみました。

同じ結果です...プロセスは開始しますが、メモ帳は表示されません。ボックスにリモート接続している間(ただし、ローカルホストから発行された状態)、およびサーバーにリモート接続する前にこれを試しました。

0 投票する
1 に答える
1780 参照

powershell - powershell でパラメータをバッチに渡す方法

PowerShell スクリプトに問題があります。受信箱に届いたメールを確認しようとしています。電子メールが受信トレイに到着すると、スクリプトは、受信した電子メールのデータの一部をデータベースに保存するバッチ ファイルを呼び出します。文字列のみでバッチ ファイルを呼び出すと (テスト)、すべてが完全に機能しますが、保存する必要がある実際の情報でパラメーターの 1 つを変更しようとすると、バッチ ファイルが呼び出されません。これが私のコードです。

今、私が変わるなら

バッチ ファイルを呼び出していないようです (最後に見たのはログですが、データベース内のデータではありません)。何が起こっている?

0 投票する
1 に答える
20181 参照

powershell - runas で開いたコマンド プロンプトから、またはスケジュールされたタスクとしてスクリプトを起動すると、Start-Process -wait が機能しない

スケジュールされたタスクとして実行したいスクリプトがありますが、想定どおりに実行されません。続行する前に、Start-Process と -Wait スイッチを使用して実行可能ファイルを呼び出そうとしています。ラインは

Start-Process -FilePath "C:\Pfx Engagement\Admin\Utilities\Backup Restore\BackupRestoreUtil.exe" -ArgumentList "/f "$backup_directory"" -Wait

コマンドプロンプトから呼び出す場合、つまり:

パワーシェル .\script.ps1

できます。コマンドを実行し、それが完了するのを待ってから次に進みます。そのコマンドが終了した後に実行する必要があるスクリプトは他にもあります。問題は、スケジュールされたタスクの場合、待機しないことです。基本的なトラブルシューティングを行って、最初に「スクリプト」という名前のスケジュールされたタスク アカウントを使用して runas でコマンド ウィンドウを開こうとしました。だから私は走る

runas /env /user:Scripts コマンド

タスク アカウントでコマンド プロンプト ウィンドウを開きます。そのコマンド プロンプトから、「powershell .\script.ps1」を再試行しますが、今回は待機しません。コマンドを実行し、コマンドが終了する直前に移動します。そのため、runas Administrator で新しいコマンド プロンプトを開くまでは、「スクリプト」アカウントに問題があるのではないかと考えていました。

runas /env /user:管理者コマンド

この管理者コマンド プロンプトからスクリプトを呼び出すと、-Wait スイッチも無視され、スクリプトは終了を待たずに呼び出した直後に移動します。

これに関する奇妙な部分は、runas を実行せずに管理者アカウントからコマンド プロンプトから呼び出すと、機能することです。同じアカウント、2 つの異なる結果。ここで一体何が起こっているのか、そして同様に重要なのは、それを修正する方法についてのアイデアはありますか?

OS は Server 2008 R2 で、powershell 3.0 を実行しています

0 投票する
3 に答える
31042 参照

c# - C#からdosコマンドラインを実行していますか?

コマンドラインプロンプトからこのコマンドを実行しようとしています:

コマンドラインコンソールに入力すると、完璧に機能します。

しかし、C# アプリケーションから動作させようとすると失敗しました。以下を試してみましたが、上記のコマンドが何らかの理由で実行されなかったようです:

誰でも動作するように変更する方法を知っていますか? ありがとう。

0 投票する
1 に答える
1808 参照

powershell - スペースを含む Start-Process powershell

私はこれに長い間取り組んでいて、非常にイライラするところまで来ています。誰かが私を正しい方向に向けてくれることを願っています。

6 つの特定のデータベースに対して、mysqldump を実行する必要があります。最後のスポーンが終了した後に各スポーンを実行する必要があります。すべてのコマンドを同時に実行するべきではありません。待つ必要があります。

私はこれを試しました:

私はこれを試しました:

コマンド、特に出力をファイルシステム上のファイルにリダイレクトするコマンドを実行するにはどうすればよいですか?

ありがとうございました。

0 投票する
1 に答える
350 参照

string - PowerShell Start-Process は、文字列として関数に渡される数値の精度を失います

レジストリを編集するコードがあるため、管理者として実行する必要があります。これを行うには、実行中の PowerShell スクリプトから新しい PowerShell プロセスを開始し、レジストリ キー パスの一部を渡します。これはたまたまバージョン番号 (例: "12.0") です。ただし、新しい PowerShell プロセスの関数は文字列を「12.0」ではなく「12」として受け取るため、レジストリ キーが見つからないというエラーが発生します。

問題を再現する小さなサンプル powershell スクリプトを作成しました。スニペットは次のとおりです。

ここでは「12.0」をハードコーディングしましたが、実際には変数を渡したいと考えています。

私が間違っていることについてのアイデアはありますか?前もって感謝します。

0 投票する
5 に答える
41087 参照

powershell - 空白を含むPowershellを開くファイルパス

私は PS スクリプトです。別の PS インスタンスで別のスクリプトを実行できるようにするには、次の手順を実行します。

destruct.ps1このスクリプトと同じフォルダーにあります。

ただし、スペース ( ) を含む場所でこのスクリプトを実行"C:\My Scripts\"すると、次のエラーが発生します。

「C:\My」という用語は、コマンドレット、関数、操作可能なプログラム、またはスクリプト ファイルとして認識されません。用語を確認して、再試行してください。

Invoke-Expression メソッドで a を使用する'&'とこの問題が解決することはわかっていますが、start-process メソッドを使用して同じことを行うにはどうすればよいでしょうか?