2012-02-16 10 views
2

私はPowerShellに関してはずっと前からBASHの背景から来ています。 PowerShellの組み込みのドキュメントとWeb上のヘルプはかなり良いですが、私が抱えている1つの領域はメソッドとプロパティ(メンバー/クラスと呼ばれていますか?)を理解することです。私は例のように、実行して使用できるメソッドとプロパティを参照できることを知っている:PowerShellメンバ:メソッドとプロパティの説明?

など .Exists.Trim.SubString、または .Splitを行うが、実際にどのように動作するか
ls | get-member 

答えて

6

あなたがGet-Memberを行うと、あなたは型名、のようなものが表示されます:

TypeName: System.IO.DirectoryInfo 

あなたはそのタイプを検索し、そのメンバーを見ることができます。

これらは.NETフレームワークオブジェクトとそのメンバーとプロパティです。したがって、msdnで豊富なドキュメントを利用できます。

は、例えば、これはDirectoryInfoのためのドキュメントです:http://msdn.microsoft.com/en-us/library/system.io.directoryinfo.aspx

+0

あなたのお気に入りの検索エンジンを取得することが最適なソリューションです。私たちは.NETオブジェクトを扱っているので、PowerShellやC#で同様の作業を行っている多くの公式のMSDN/TechNetドキュメント+多くのサンプルがあります。 –

+0

ありがとうございますが、PowerShellでこれをどのように使うべきかは必ずしもわかりません。構文は何ですか?メソッドを使うときにはいつも同じ構文が使われています。つまり、 '.Method(Get | Set)'? GetまたはSetはどのように使用され、これらは唯一のオプションですか? – Vippy

+1

get; set;メソッドではなくプロパティであることになります。そのためには、ちょうどドット付き表記を使用します:get-childitem | foreach-object {$ _。length} ...実際のメソッドについては、PowerShellのコマンドレットよりもC#のようなプログラミング言語のように見えます。(get-date).toString( "MM-dd-yyyy") –

2

私はちょうどこれであなたを助けるかもしれないスクリプトリポジトリにスクリプトを掲載しました。スクリプトは、クエリとしてのFileInfoとDirectoryInfo種類のあなたのためのMSDNの検索ページを開く原因となる

Get-ChildItem C:\Windows | Get-Member | .\Find-TypeReference.ps1 

http://gallery.technet.microsoft.com/scriptcenter/Finding-reference-b12324bc

それはあなたのような何かを行うことができますので、今あなたのための努力を奪います。

+1

あなたのスクリプトをダウンロードしました。ありがとうございます。上記のように、MSDNサイトでは、PowerShell内でこれを使用する方法の例は教えていません(ただし、他の言語の例を示しています)。ほかのPowerShellユーザーはどのようにこれらのメソッド/プロパティを学習しますか? – Vippy

+2

これらのさまざまなメソッドやプロパティを活用する方法を知るには、.NET Frameworkの学習に関する調査を本当に行う必要があります。 PowerShellのコマンドの構文を理解する限り、いくつか見ておく必要があります。 は* -full新しいオブジェクトを取得し、助ける*取得 - ヘルプabout_Objects *取得 - ヘルプabout_Methods を*取得 - ヘルプabout_Properties – tcnolan

+2

また、方法について、あなたは例えば、文字列を持っている場合、{$ A =「テスト」}それをGet-Memberに渡すと、メソッドとプロパティの定義が表示されます。メソッドを扱うときは、かっこなしでメソッド名を追加することができます。PowerShellはメソッド呼び出しの実際のオーバーロードされた定義を提供します。部分文字列メソッドのさまざまな定義を見るには、このようなことをしてください:{$ a.substring} – tcnolan