HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


PowerShellの開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > PowerShell Tips > ファイル操作 Tips メニュー

08.ファイルを削除する

 
UPDATE:2007/12/17    
 



ファイルを削除するには Remove-Item コマンドレットを使用します。

基本構文は

Remove-Item 削除するファイル

です。

sample1では C:\Work にある A.txt を削除します。

sample1

PS C:\Work> Remove-Item C:\Work\A.txt

ワイルドカードを使用して、複数のファイルを削除することも可能です。

sample2では C:\Work にある *.txt ファイルを削除します。

sample2

PS C:\Work> Remove-Item *.txt

ファイルを削除するときに確認メッセージを表示するには、-confirm パラメータを使用します。(sample3)

複数のファイルを削除する場合は、1ファイルずつ確認が行われます。
確認メッセージの「[A]すべて続行(A)」を選択すれば、一気に削除することができます。

sample3

PS C:\Work3> Remove-Item *.txt -Confirm

確認
この操作を実行しますか?
対象 "C:\Work3\Process.txt" に対して操作 "ファイルの削除" を実行しています。
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "Y"): Y

次に特定のファイルを除いて削除する方法を紹介します。
特定のファイルを除外するには -exclude パラメータを使用します。

sample4 では file*.txt と folder*.txt のファイルがそれぞれ3つずつあります。(1)
-excludeパラメータを使用して、ファイル名が folder で始まるファイルを除いて削除します。(2)
結果を見てみると、folder*.txt のファイルを残して削除がされていることがわかります。

sample4

PS C:\Work3> Get-ChildItem                                   ---(1)


ディレクトリ: Microsoft.PowerShell.Core\FileSystem::C:\Work3


Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2007/12/13 15:46 14 file01.txt
-a--- 2007/12/13 15:46 14 file02.txt
-a--- 2007/12/13 15:46 14 file03.txt
-a--- 2007/12/13 15:46 14 folder01.txt
-a--- 2007/12/13 15:46 14 folder02.txt
-a--- 2007/12/13 15:46 14 folder03.txt


PS C:\Work3> Remove-Item *.txt -exclude folder*.txt ---(2)
PS C:\Work3> Get-ChildItem ---(3)


ディレクトリ: Microsoft.PowerShell.Core\FileSystem::C:\Work3


Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2007/12/13 15:46 14 folder01.txt
-a--- 2007/12/13 15:46 14 folder02.txt
-a--- 2007/12/13 15:46 14 folder03.txt

次に、読み取り専用ファイルや隠しファイルを削除する方法を紹介します。

読み取り専用ファイルや隠しファイルを削除するには、-forceパラメータを使用します。

-forceパラメータを使用せずに削除しようとした場合には(1)のようにエラーが表示されます。

-forceパラメータを使用することで、削除ができます。(2)

sample5

PS C:\Work> Remove-Item Test.txt                           ---(1)
Remove-Item : 項目 C:\Work\Test.txt を削除できません: 操作を実行するために十分なアクセス許可がありません。
発生場所 行:1 文字:12
+ Remove-Item <<<< Test.txt
PS C:\Work3> Remove-Item Test.txt -force ---(2)