問題タブ [cmdlet]
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.
c# - C#のPowershellコマンド「用語はコマンドレットとして認識されません」
C# アプリケーションから powershell コマンドを実行する際に問題が発生しています。この問題に関連する多くのことを見つけましたが、何が起こっているのかを理解するのに役立つものはありませんでした.
だから私はこの小さなテスト関数を持っています:
問題は、一部のコンピューターでは問題なく動作することですが、他のコンピューターでは「'msg' という用語はコマンドレット、関数などとして認識されません」というメッセージが表示されることです。これは、c:\windows\system32 に存在するすべての実行可能ファイルで発生しています。「Get-Process」などのコマンドレットを使用すると、正常に動作します...
現在、2台のコンピューターでテストしています。どちらもExecutionPolicyが無制限に設定されており、Powershellのバージョンは同じです。環境変数の「パス」も同じです。
powershell - MSBuild で powershell スクリプト ファイルを実行するときに read-host コマンドレットを使用する
すべて、MSBuild で外部の Power Shell スクリプト ファイルを実行しようとしています。ただし、PS がコマンドレットを実行するたびにRead-Host
. MSBuild が停止しているようです。入力を求めません。どうなるかわかりません。コンソールがデッドロック状態にあるようです..ありがとう。
testloop.ps1 コードを以下に示します。
MSBuild コードは次のとおりです (わかりやすくするためにラップされています)。
powershell - PowerShell Snapin コマンドレット CommandNotFoundException
現在、最初の PowerShell Snapin を作成しようとしています。このチュートリアルに従いました: PowerShell Snapin を作成する方法と、カスタム コマンドレットを呼び出そうとするまで、すべてが正常に機能します。さらに、アセンブリを登録するために「Post Build Event」を追加しました。
その後、Snapin を追加したところ、魅力的に機能しました。
System.Automation 参照のアセンブリへのパス:
ターゲット プラットフォームとして x86 を選択し、すべて x86 PowerShell で実行しています。プラットフォームが「アクティブ (任意の CPU)」に設定されている
これは私のコマンドレットコードです:
これは、コマンドレットを呼び出そうとしたときに発生するエラーです。
私が間違っているのは、ターゲティング プラットフォーム (x86) に関してセットアップに何か問題がありますか?
c# - C# カスタム コマンドレットのパラメーターでユーザー入力パスワードをマスクする方法
私のプログラムでは、パラメーターでユーザーにパスワードを要求する必要があります。
パスワードに使用する正しいタイプがわかりません。別の質問: カスタム作成された PowerShell コマンドレットでパスワードを安全に処理するにはどうすればよいですか?
受け入れられた回答では、コードで read-host を使用するように求められましたが、このフィールドを要求するにはパラメーターを使用する必要があります。
また、パスワードに SecureString を使用しようとしましたが、安全な文字列ではなく文字列として自動的に受け入れられるため、このパラメーターに SecureString を指定することはできません。
次の使用法を達成する方法はありますか:
c# - コマンドレットで内部パイプラインから情報を取得する
ネストされたパイプラインを作成しようとしています。このネストされたパイプラインで実行しているコマンドレットは、ネストされたパイプラインから実行されているかどうかを確認する必要があります。ネストされたパイプラインから実行する場合は、少し異なる動作をする必要があります。
コマンドレットがネストされたパイプラインから実行されているかどうかを判断する方法を教えてください。
次のコードを使用して、ネストされたパイプラインを作成します。
c# - PowerShell の $input 変数に相当する C#
PSCmdlet クラスを拡張して、C# で PowerShell コマンドレットを作成しています。C# コードで使用するには、Pipelined 入力全体を取得する必要があります。プロパティが次のように設定されたパラメーターを使用してみました:
アイテムのリストをパイプしてコマンドレットを実行しようとすると、一度に 1 つのアイテムが取得され、C# コードで処理されます。
C# コードで処理するには、パイプ入力全体を取得する必要があります。これは、$input 変数を使用して PowerShell で取得できることがわかりました。この $input PowerShell 変数に相当する C# はありますか?
powershell - Powershell where句フィルタリング
PowerShell スクリプトを使用してサーバーで実行されているサービスをフィルタリングしようとしていますが、構文が正しくないようです
脚本
Get-Service -ComputerName $ServerName |Where-Object {$_.Name -like "DEX*" -or $_.Name -like "WORLD*" -or $_.Name -like "Entr*"}
強調表示されたセクションに問題があります。どんな助けでも大歓迎です..