2012-04-10 5 views
0

フォルダAにcsvファイルがある場合は、フォルダAのすべてのcsvファイルを削除してから、すべてのcsvファイルを削除する必要があります(実際には、フォルダAの正確なcsvファイル名はわかりません) ; フォルダAにcsvファイルがない場合は何もしないでください。 私はmp3ファイルの削除についてのトピックを検索しました: Powershell - Delete all non mp3 files特定の種類のファイル(suceをcsvファイルとする)を判断するには、powershellを使用しますか?

、私は例を取ると、以下のフォルダAに私のcsvファイルを削除するコマンドレットです:、

Get-childitem -Recurse | Where-Object {$_.Extension -eq '.csv'} | 
Remove-Item -whatIf 

が、問題がありますフォルダAにcsvファイルがない場合、上記のcmdを実行するとエラーが発生します。私はちょうどcsvファイルが存在するかどうかを判断する方法を知らない、他の誰かが助けることができる?非常にthx。

+0

コードサンプルでは、​​csvを除くすべてのファイルを削除しています。 –

+0

はい、これも良い考えです。 – CharlieShi

答えて

0

あなたは、単にエラーをスキップしremove-item-ErrorActionを追加することができます。

Get-childitem -Recurse | Where-Object {$_.Extension -ne '.csv'} | 
Remove-Item -ErrorAction SilentlyContinue 
+0

はい、ありがとう、本当にありがとう。 – CharlieShi

+0

おそらくそれが最良の方法だと思います。 – CharlieShi

0

使用ANコンストラクトは、削除を実行する前に条件が真であるかどうかをテストする場合:

if(gci c:\folderA -filter *.csv){do-something} 

文の間の場合をかっこはfalseを返し、中括弧の間のコードは実行されません。

関連する問題