問題タブ [powershell-5.0]
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 DSC スクリプト リソースが失敗する
これは正しく動作していないようです
次のスクリプト リソースがあります。
このスクリプトで構成に Start-DscConfiguration -Wait -Verbose を使用すると、次の場所でエラーが発生します。
これはおそらく、Import-Module RemoteDesktopServices が正しく機能していないため、RDS: パスが見つからないためです。そうは言っても、失敗のすぐ上に、Import-Module RemoteDesktopServices からの詳細なログが発生していることがわかります。
スクリプト リソースを変更して、SetScript、GetScript、および TestScript がすべて新しいプロセスとして powershell を呼び出すようにすると、機能します。
Invoke-Command や Invoke-Expression を使うと爆破してしまうので、別プロセスで動かすのがポイントのようです。この種のハックなしでスクリプト リソースを適切に動作させる方法はありますか、それとも役に立たないか実装が不十分なだけですか?
powershell - Powershell5 IndexOf の動作が変更されました - 提案はありますか?
最近ワークステーションを Windows10 にアップグレードしたので、古いスクリプトをすべてチェックしましたが、IndexOf の動作が異なっているようです。
PS4では、これはうまくいきました:
ただし、PS5 では、IndexOf はすべての値に対して -1 を返すだけです。arraylists で動作させる方法がまったく見つかりませんでした。これを PS5 で動作させるには、次のような修正が必要です。
これが変更された理由についてのアイデア、およびより良い修正があれば大歓迎です!
class - PowerShell 5 およびクラス - タイプ「X」の「X」値をタイプ「X」に変換できません
私は PowerShell のクラスを使用しようとしています。これは、関連するデータをグループ化する非常に便利な方法であり、動作を処理するのが非常に面倒です。簡単なシナリオ: クラスを定義する 1 つの PS スクリプトと、そのクラスを使用する別のスクリプト。
共通.ps1
Script1.ps1
で変更Script1.ps1
を加えるまでは、すべて問題ありません。何回でも問題なく実行できますCommon.ps1
。次のエラーが発生します。
おそらく、PS ファイルに(空白を追加しただけでもX
) 何らかの変更が加えられると、その再コンパイルが強制されるため、その型は以前とは異なりX
ます - 一時的なコンテナー アセンブリが変更されました (まったく同じ問題が .NET で簡単に再現可能です - 型は「完全修飾アセンブリ名」が同じである限り)。変更するとScript1.ps1
、物事が再び正常に機能します。
このような問題を克服する方法はありますか?
powershell - PowerShell で無視される sqlcmd -v パラメータ
ドキュメント ( sqlcmd Utilitysqlcmd
) を読みましたが、の-v
パラメーターを期待どおりに動作させることができません。
次の SQL スクリプト (echo.sql) を想定します。
-v
引数を設定せずに PowerShell プロンプトで実行すると、次のようになります。
数値変数 ( THE_TOP
) の設定は無視されます。
THE_TOP
inのデフォルト値を削除するecho.sql
と、パラメーターが無視されているという主張が強化されます。
THE_PATH
パラメータを設定しようとすると、次のようになります。
正しい-v
構文は何ですか?
windows - PowerShell 5 AppSettings バグ?
PowerShell v5.0.10586.117 にアップグレードしたところ、app.config ファイルから AppSettings にアクセスできなくなりました。このコードは PowerShell v4 で動作します (v4 がインストールされている他のコンピューターで試してみたところ、AppSettings からデータが返されます)。
PowerShell で App Config を設定しました
現在のドメインにアプリ設定があることを確認できます
戻りますPATH\App.config
が、実行すると
PowerShell v5 は次を返します。0
ただし、PowerShell v4 (Windows 7、Windows Server 2008 R2 Enterprise など) では次のように返されます。5
PowerShell 5 と PowerShell 4 で動作が異なるのはなぜですか? これはバグですか?アプリの設定の問題を解決する方法はありますか?
[より詳しい情報]
私は回避策を試してみました
$retVal を使用したこの回避策により、期待する AppSettings からデータを取得できますが、App Config データが存在することを期待するインポート中の .dll で後で失敗します。
[アップデート 1]: Windows 8、Windows 8.1、および Server 2012 で PowerShell 5 にアップグレードしたところ、同じ問題が発生しました。テストしたすべての PowerShell 5 インスタンスにあることを反映するために、タイトルと問題の説明を更新しました。
[更新 2]:
@PetSerAl によると、構成ファイルを設定する前に AppSetting を取得しようとすると、PowerShell v4 で同じ問題が発生することがわかりました。
0
PowerShell v4 で返されます。
アプリ構成ファイルを移動した場合C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe.config
、データを返す問題はありません。また、アプリ構成の情報を期待する、ロードしている外部 dll の問題もありません。
python - Python から PowerShell へ、語幹: クラス
python に相当する豪華なものは次のとおりです。
SO純粋主義者のために、これまでの私の試み:
powershell - 入力した文字列値の色を変更するにはどうすればよいですか?
私の仕事では、最近 Powershell をかなり頻繁に使い始めました。使いやすくするために、コマンド プロンプトの色を好みに合わせてカスタマイズしようとしていますが、引用符で囲まれた文字列値の色をカスタマイズしようとすると問題が発生しました。PS がテキストベースのインターフェースであることを考えると、このステートメントはあまり意味がないかもしれないので、これを参照してください。
どうやらまだ画像を埋め込むことができないので、リンクをクリックする必要があります。とにかく、このテキストは私には非常に読みづらく、よりコントラストのあるものに切り替えようとしていますが、その設定が見つかりません。
私はすでに次のオプションを見てきました:
- これらの色を UI (右クリック コンテキスト メニュー) で設定しますが、デフォルトの前景と背景のみを設定できます。
- を利用して色
$host.UI.RawUI
を設定しますが、これはデフォルトの前景と背景のみを設定することもできます - $host.PrivateData を使用して色を設定しますが、これにより多くのオプションが提供されますが、引用されたテキストや画像に表示される変数など、より状況依存の項目を設定するオプションがないようです。
私の代替計画は、必要に応じて PowerShell ISE を使用することです (これをカスタマイズできます) が、可能であれば軽量のコマンド プロンプトを利用できるようにしたいと考えています。
誰かがこれを変更する方法を考え出しましたか?
Windows 10 で PowerShell v5 を使用しています。