私はpowershellの初心者です。今日、私は非常に簡単なことを試しました
Alias | sls -Pattern 'echo'
生産されましecho
たが、私が欲しいのはAlias echo -> Write-Out
です。
bashでは、次のことができます
alias | grep 'echo'
私の質問は、なぜsls
うまくいかないのかということです。ところで、 に置き換えるsls
と、うまくいきfindstr
ました。
私はpowershellの初心者です。今日、私は非常に簡単なことを試しました
Alias | sls -Pattern 'echo'
生産されましecho
たが、私が欲しいのはAlias echo -> Write-Out
です。
bashでは、次のことができます
alias | grep 'echo'
私の質問は、なぜsls
うまくいかないのかということです。ところで、 に置き換えるsls
と、うまくいきfindstr
ました。
特定の名前のエイリアスを取得したい場合は、次のようにします。
alias -name echo
echo -> Write-Out
は次のとおりDisplayName
です。
(alias -name echo).DisplayName
このGet-Alias
コマンドは一連のオブジェクトを返します。各オブジェクトは単一のコマンド エイリアスを表します。CommandType
PowerShell で表示すると、これらのオブジェクトは、、Name
およびModuleName
プロパティを含むテーブルとしてフォーマットされます。
にパイプするfindstr
と、フィルタリングされるのはこれらの列の文字列表現であるため、一致するとテーブル行全体が表示されます。
Alias echo -> Write-Output
各オブジェクトにパイプすると、コマンドレットのパラメーターSelect-String
にバインドされます。テキストを操作するため、受け取ったオブジェクトを呼び出してその文字列表現を取得するだけです。-InputObject
Select-String
Select-String
ToString
ToString
プロパティのみを返しName
ます。これは、次を実行することで確認できます。
alias | %{$_.tostring()}
したがって、からSelect-String
の一致はエイリアス名でのみ一致します。