問題タブ [invoke-command]
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モジュールに変数を渡します
新しいPSSessionを作成し、リモートマシンにActiveDirectoryモジュールをインポートしてから、ローカルワークステーションにインポート-pssessionを実行しようとしています。これは正常に機能します。コードは次のようになります。
そして今、私はActiveDirectoryコマンドレットを呼び出すことができるので、例えばGet-ADUser -Filter *
うまくいきます。
しかし
ActiveDirectoryコマンドレットに変数を渡すことができません。次を実行できません。
それは$name
定義されていないと言います。変数をに渡すことができませんGet-ADUser
。
助言がありますか?
ありがとう
windows - invoke-command によって開始されたリモート ジョブを強制終了する
バックグラウンドプロセスでinvoke-commandによって開始されたリモートジョブを強制終了する簡単な方法は何ですか?
リモート PS スクリプトをキックしてレガシー exe ファイルを実行し、そのプロセスを強制終了する方法が必要です。
最初に stop-job を使用するつもりでしたが、読んでいるように、ローカル プロセスでしか機能しません。
次に、Remove-job -force コマンドを使用するつもりでしたが、正しく理解できていれば、完了するまで実行中のプロセスを強制終了できません (ここでも、リモート ps スクリプトが別のプロセスを開始して exe ファイルを実行します)。
wmi terminate コマンドを使用してプロセスを強制終了できることを読んでいますが、リモート プロセスの PID を取得する方法がわかりません (他のユーザーからプロセスを強制終了できるため、名前は使用できません)。
私の目標を達成するための最良の方法は何ですか?
私のスクリプトは次のようになります。
powershell - PowerShellのstart-processおよびinvoke-commandを使用してファイルをリモートで圧縮する
システムにリモートでアクセスし、そこでファイルを圧縮または解凍して、完了時にプロセス信号を受信できるようにしたい。Start-processは、-waitパラメーターと連携して、PowerShellから7z.exeを同期的に実行します。これをinvoke-commandと組み合わせて同じコマンドをリモートで実行しようとすると、waitパラメーターが尊重されず、プロセスがすぐに返され、zipファイルが生成されないため、プロセスが強制終了されていると思います。
私はもともとPSCXのwrite-zipとexpand-archiveを試しましたが、後者は64ビットの.NET4.0構成と互換性がありません。そのため、コマンドラインから64ビットの7z.exeを呼び出そうとしています。エラーは発生していません。PowerShellは、ジョブを実行状態として報告してから完了し、zipファイルは生成されません。
ヘルプやポインタに感謝します。
ありがとう、グレゴリー
android - Android プログラムで Linux 端末コマンドを実行する
Androidフォンにあるディレクトリをラップトップのディレクトリと同期する小さなアプリを開発しています。電話をルート化し、rsync もインストールして、電話とラップトップの間でディレクトリを同期させました。手動で確認したところ、すべてが機能しているようです(電話のディレクトリをラップトップと同期できます)。今、私はこれをプログラムで行いたいと思います。これどうやってするの?何か案は?
wpf - InvokeCommandAction がイベントを親要素に伝播しないようにするにはどうすればよいですか?
EventTrigger に関連付けられた InvokeCommandAcction を使用すると、元のイベントが処理されるまで親要素にルーティングされていることに気付きました。うーん、これは想定内の動作だと思います。しかし、私の質問は、イベントを処理済みとしてマークして、UI ツリー全体に伝播しないようにする方法です。
実際には、このイベントをコマンドで処理すると、すべてがこのコマンドで処理されるため、伝播する必要はありません。そして、私が見つけたあるコーナーケースでは、それはいくつかの望ましくない動作を引き起こします. たとえば、ユーザーが要素をダブルクリックすると (MouseDoubleClick イベント)、新しいウィンドウが開きます。問題は、MouseDoubleClick イベントが UI ツリーの最上位要素に到達したばかりであるため、新しいウィンドウが開き、メイン ウィンドウが新しいウィンドウの前に戻ってくることです。必要な動作は、新しいウィンドウを前面に保持することですが、InvokeCommandAction によってイベントが伝播されるため、メイン ウィンドウがフォーカスを取り戻します...
私ができることは、代わりに CallMethodAction アセットを使用することですが、私は MVVM シナリオにいるので、コードに UI イベント引数は必要ありません。これにより、暗黙的にイベントを処理済みとしてマークし、問題を修正できたとしても。
powershell - ローカル変数を引数として使用するリモートマシンでスクリプトブロックを実行する方法
リモートマシンから引数を渡してアプリケーションを実行したいと思います。リモートマシンをローカルで実行することにより、リモートマシンで動作する次のものがあります。
以下を使用してリモートで実行する際に問題が発生しました。
私が読んだことから、これは変数スコープを使用することであり、解決策は、以下を使用してリモートマシンにスクリプトブロックを渡す前にスクリプトブロックを作成することです。
多くの組み合わせを試しましたが、実行できません。
windows - Powershell の Invoke-Command を使用して引数付きのバッチ ファイルを呼び出す
リモート マシンでバッチ ファイルを呼び出すために、Powershell を使用したいと考えています。このバッチ ファイルには引数があります。これが私がこれまでに持っているものです:
少し調べてみたところ、Invoke-Command 関数はそのスクリプト ブロックをまったく新しいプロセスで実行するため、その中に変数を入れることはできません (それらは展開されません)。それが -ArgumentList タグの目的です。だから私は代わりにこれを試しました...
それもうまくいきませんでした...私のバッチスクリプトは、引数が渡されていないことを教えてくれます。明示的にそう言っているものは見つかりませんが、-ArgumentList パラメーターは Powershell スクリプトでのみ機能するようです (バッチ スクリプトにはフィードしません)。
Invoke-Command を使用して引数付きのバッチ ファイルを呼び出す方法はありますか?
powershell - Powershell の Invoke-Command で呼び出された ScriptBlock の戻り値を取得する方法
私の質問はこれと非常に似ていますが、Invoke-Command を使用して ScriptBlock のリターン コードを取得しようとしています (したがって、-FilePath オプションは使用できません)。これが私のコードです:
問題は、Invoke-Command が script.cmd のリターン コードをキャプチャしないことです。そのため、失敗したかどうかを知る方法がありません。script.cmd が失敗したかどうかを知る必要があります。
New-PSSession も使用してみました (これにより、リモート サーバーで script.cmd の戻りコードを確認できます) が、それを呼び出し元の Powershell スクリプトに戻して、実際に失敗について何かを行う方法が見つかりません。
powershell - powershell:パラメータでプログラムを起動するスクリプト?
以下の Powershell スクリプトを実行すると、以下のエラーが表示されます。パラメータを使用してpowershellでプログラムを実行するにはどうすればよいですか? スクリプトは、グループ ポリシー ログオンになります。
Invoke-Expression : 引数 '\TBHSERVER\NETLOGON\BGInfo\BGIFILE.bgi /timer:0 /s ilent /nolicprompt ' を受け入れる位置パラメーターが見つかりません。X:\Systems\scripts\PowerShell\UpdateDesktopWithBGInfo.ps1:6 char:18 + Invoke-Expression <<<< $logonpath $ArguList + CategoryInfo : InvalidArgument: (:) [Invoke-Expression]、ParameterBindingException + FullyQualifiedErrorId : PositionalParameterNotFound、 Microsoft.PowerShell.Commands.InvokeExpressionCommand
powershell - Powershell Remote Invoke-Command Start-Process アプリが起動後すぐに終了する
2 つのプロセスをリモートで強制終了し、いくつかのフォルダーを削除し、サービスをアプリケーションとして起動するスクリプトを作成しています。最終的にこれは複数のサーバーに対して実行されるように展開されますが、現在、単一のサーバーに対してテストしています。リモート サービスを起動する最後のステップを除いて、すべてがうまく機能します (サービスとして実行されるとの互換性の問題により、-cl 引数を使用してアプリケーションとして実行されます)。アプリケーションはスクリプトを介して起動しますが、スクリプトが次のステップに進むとすぐにシャットダウンします。私はまったく初心者なので、かなり掘り下げてきましたが、解決策を見つけることができませんでした。新しい実行空間でプロセスを起動する必要があるようですが、それを行うための適切な noob ガイドを見つけることもできません。
また、スクリプトは、ローカライズされてマシン上で実行された場合と同じように実行されます。
これが私が持っているものです