タグ付けされた質問 「powershell」

PowerShellは、Microsoftが提供するクロスプラットフォームのコマンドラインおよびスクリプトユーティリティです。このタグは、PowerShellスクリプトの記述と実行に関する質問のみに使用してください。クロスプラットフォームバージョンのPowerShellコア(Windows、macOS、およびLinux)に固有のプログラミングの質問には、[powershell-core]のタグを付ける必要があります。システム管理に関する質問は、スーパーユーザーまたはサーバーの障害について尋ねる必要があります。

4
PowerShellでユーザー入力を要求する
パスワードとファイル名を含む一連の入力をユーザーに求めたいのですが。 私はの使用例を持っていますがhost.ui.prompt、これは理にかなっているようですが、戻りがわかりません。 PowerShellでユーザー入力を取得するより良い方法はありますか?
209 powershell 

4
文字列から任意のネイティブコマンドをどのように実行しますか?
次のシナリオで必要性を表現できます。ネイティブコマンドとして実行される文字列を受け入れる関数を記述します。 それは、アイデアからそれほど遠くはなれていません。逐語的に実行するコマンドを提供する社内の他の場所からの他のコマンドラインユーティリティとインターフェイスしている場合。コマンドを制御しないため、有効なコマンドを入力として受け入れる必要があります。これらは私が簡単に克服することができなかった主なしゃっくりです: コマンドは、スペースを含むパスにあるプログラムを実行する可能性があります。 $command = '"C:\Program Files\TheProg\Runit.exe" Hello'; コマンドには、スペースを含むパラメーターを含めることができます。 $command = 'echo "hello world!"'; コマンドにはシングルとダブルの両方のティックがあります: $command = "echo `"it`'s`""; これを達成するためのクリーンな方法はありますか?私は贅沢で醜い回避策を考案することしかできませんでしたが、スクリプト言語の場合、これは非常に単純なはずだと感じています。

17
実行中のコマンドレットの現在のディレクトリを取得する方法
これは簡単なタスクですが、実行されたコマンドレットが配置されているディレクトリへのパスを取得する方法について、いくつかの試みがありましたが、成功はさまざまです。たとえばC:\temp\myscripts\mycmdlet.ps1、設定ファイルがあるを実行すると、内の変数C:\temp\myscripts\settings.xmlに保存できるようになりC:\temp\myscriptsますmycmdlet.ps1。 これは機能する解決策の1つです(ただし、少し面倒です)。 $invocation = (Get-Variable MyInvocation).Value $directorypath = Split-Path $invocation.MyCommand.Path $settingspath = $directorypath + '\settings.xml' 別の人は私たちのテスト環境でのみ機能するこのソリューションを提案しました: $settingspath = '.\settings.xml' 私は後者のアプローチがとても好きで、毎回ファイルパスをパラメーターとして解析する必要があることを好みますが、私の開発環境で機能させることはできません。どうしたらいいですか?PowerShellの構成方法と関係がありますか?
202 powershell  cmdlet 


4
Invoke-WebRequest、パラメーター付きのPOST
私はURIにPOSTして、パラメータを送信しようとしています username=me Invoke-WebRequest -Uri http://example.com/foobar -Method POST メソッドPOSTを使用してパラメーターを渡すにはどうすればよいですか?
197 powershell  rest 

8
バッチファイルからPowerShellスクリプトを実行する方法
このスクリプトをPowerShellで実行しようとしています。以下のスクリプトをps.ps1デスクトップと同じように保存しました。 $query = "SELECT * FROM Win32_DeviceChangeEvent WHERE EventType = 2" Register-WMIEvent -Query $query -Action { invoke-item "C:\Program Files\abc.exe"} このPowerShellスクリプトを実行するバッチスクリプトを作成しました @echo off Powershell.exe set-executionpolicy remotesigned -File C:\Users\SE\Desktop\ps.ps1 pause しかし、私はこのエラーを得ています:

6
「Write-Host」、「Write-Output」、または「[console] :: WriteLine」の違いは何ですか?
メッセージを出力する方法はいくつかあります。経由で何かを出力との間の効果的な違いは何ですかWrite-Host、Write-Outputまたはが[console]::WriteLine? また、私が使用する場合、 write-host "count=" + $count +出力に含まれます。なんで?式が評価されて、書き出される前に単一の連結された文字列が生成されるべきではありませんか?
192 powershell 

9
PowerShellの関数戻り値
SharePointチームサイトのプロビジョニングに関連するいくつかのアクションを実行するPowerShell関数を開発しました。最終的に、関数がプロビジョニングされたサイトのURLを文字列として返すようにしたいので、関数の最後に次のコードを記述します。 $rs = $url.ToString(); return $rs; この関数を呼び出すコードは次のようになります。 $returnURL = MyFunction -param 1 ... だから私は文字列を期待していますが、そうではありません。代わりに、System.Management.Automation.PSMethod型のオブジェクトです。String型ではなくその型を返すのはなぜですか?
188 powershell 


11
&&をPowershellで動作させることはできますか?
&&グーグルで検索することは悪名高いが悪名高いが、私が見つけた最高のものはを使うように言うこの記事である-and。 残念ながら、それはこれ以上の情報を提供せず、私が何をすることになっているのかを見つけることができません-and(これも、悪名高いほど検索が難しいことです) 私がそれを使用しようとしているコンテキストは、「cmd1を実行し、成功した場合はcmd2を実行する」で、基本的には次のとおりです。 csc /t:exe /out:a.exe SomeFile.cs && a.exe これは、知っている人にとっては簡単ないくつかの担当者ポイントになるはずです。ありがとうございます。 編集:1行で複数のコマンドを実行したいだけで、最初のコマンドが失敗するかどうかを気にしない場合は、使用できます;私の目的のほとんどはこれで問題ありません 例:kill -n myapp; ./myapp.exe。
186 syntax  powershell 




3
Array.Addと+ =
PowerShell配列でいくつかの興味深い動作を見つけました。つまり、配列を次のように宣言した場合です。 $array = @() $array.Add("item")メソッドを使用してアイテムを追加しようとすると、次のエラーが表示されます。 「1」の引数で「追加」を呼び出す例外:「コレクションは固定サイズでした。」 ただし、を使用してアイテムを追加する$array += "item"と、アイテムは問題なく受け入れられ、「固定サイズ」の制限が適用されないようです。 どうしてこれなの?
179 arrays  powershell 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.