TL; DR
どちらか:はcmd --% /c
でそれを付けることによって、そのままであるあなたのcmd.exe
のコマンドを実行します。
cmd --% /c del /S *.jpg
--%
、ストップ・パースの記号を、伝えますPowerShellは残りの引数の解析を停止し、そのままそのまま渡します(%<name>%
環境変数を除いてvar参照可能) - Get-Help about_Parsing
を参照してください。
または:好ましくは、PowerShellのコマンドレットのネイティブRemove-Item
を使用します。
Remove-Item * -Recurse -Include *.jpg -WhatIf
注common parameter-WhatIf
が便利プレビューそれにコミットする前に、操作することができますか。 Get-Help Remove-Item
を参照してください。
- 注意:PSv5.1、
Remove-Item
、Copy-Item
とMove-Item
コマンドレットと、それが再帰的操作と-Include
と-Exclude
パラメータになると、より少ない程度に、Get-ChildItem
は悪名高い気難しいあるのよう - 多くがあります微妙。一般に
は、しかし、のPowerShellのコマンドレットは、はるかに強力な彼らのcmd.exe
対応よりもあり、かつ効果的にそれらを使用する方法を学ぶために何の努力は十分に費やされている - あなたはすぐにのUnixプラットフォーム上でPowerShellを使用することができますはなく、少なくともので、同様に。del
とdir
よう
cmd.exe
コマンドがcmd.exe
に組み込まれていると直接のPowerShellから呼び出すことができません。それらを呼び出すには、上記のようにcmd /c
を使用して、cmd.exe
を明示的に呼び出す必要があります。混乱することができる何
はPowerShellがエイリアスそのcmd.exe
おおよそ同等の対応のためにという名前の自身コマンド(コマンドレット)のためのを定義することです。
PowerShellコマンドレットの実際の名前は、冗長ではありますが、very consistent naming scheme(これは、PowerShellネイティブエイリアスの名前を管理する場合もあります)と大きく異なります。
たとえば、del
は、PowerShellのRemove-Item
コマンドレットのエイリアスです。
このエイリアシングは、両刃の剣です:一方では、cmd.exe
(バッチプログラミング)に慣れた人がPowerShellの対応物を発見しやすくなります。一方、それはPowerShellのコマンドライン構文が全く異なっているという事実をあいまいにしています。 -?
でそれを呼び出すか、Get-Help
を使用し、コマンドの構文の概要について
> Get-Command del
CommandType Name Version Source
----------- ---- ------- ------
Alias del -> Remove-Item
:
はGet-Command
を使用し、名前を入力するとPowerShellが実際に起動するコマンド何を学ぶために:
del /?
詳細なヘルプについては、Get-Help -detailed <cmd>
またはGet-Help -full <cmd>
を使用してください。 Get-Help -detailed Get-Help
を参照してください。あなたが見ることができるように
、あなたはに-?
を渡すと、同様のコマンドのエイリアスフォームでGet-Help
を呼び出すことができます。
これはCMDコマンドですが、PowerShellのコマンドではありません。 – PetSerAl
ありがとう、笑、それは簡単な修正でした! –