【Ruby】ディレクトリを削除するDir.deleteメソッドを解説します

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。

この記事では、 Rubyのディレクトリを削除するDir.deleteメソッドについて

  • Dir.deleteメソッドとは
  • Dir.deleteメソッドを使ったサンプルプログラム

と、丁寧に解説していきます。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
Rubyのバージョン 2.6.6

この記事ではRubyプログラムは

C:\rubystudy

に作成しています。

Dir.deleteメソッドとは

Dir.deleteメソッドとは、引数に指定されたパスのディレクトリを削除し、削除に成功すると0を返すメソッドです。

削除したいディレクトリは、相対パスでも絶対パス両方で指定することができます。
それぞれのパスについては、こちらの記事をご参考ください。

Dir.deleteメソッドのサンプルは、以下になります。

上記を実行すると、引数で指定されているsampleディレクトリは削除され、返り値として0が返ります。

Dir.deleteメソッドを使う上で、注意点が2点あります。
1点目はもし存在しないディレクトリを引数に指定していた場合、
RubyのDir.deleteメソッドを解説

とシステムエラーとなることです。
ディレクトリが存在するかどうかは、Dir.exist?メソッドで確認できます。
詳しくはこちらの記事をご参考ください。

2点目はDir.deleteメソッドの対象は、空のディレクトリでなければならないという点です。
もしファイルが存在するディレクトリに対してDir.deleteメソッドを実行しようとした場合
RubyのDir.deleteメソッドを解説

とシステムエラーとなります。
ディレクトリが空かどうかは、Dir.empty?メソッドで確認できます。
詳しくはこちらの記事をご参考ください。

では、次の章で実際に使ってみます。

Dir.deleteメソッドを解説するプログラムの概要

Dir.deleteメソッドを解説するプログラムでは、

  • 絶対パス
  • 相対パス

の2パターンでDir.deleteメソッドを使って空のディレクトリを削除し、結果を確認します。

Rubyサンプルプログラム

実行結果

削除実行する前の状態を確認します。
sampleディレクトリに

  • hogehoge
  • test

のディレクトリが存在していることが確認できました。
RubyのDir.deleteメソッドを解説

では、実行してディレクトリが削除できるかを確認します。

Rubyプログラムを実行するやり方は、以下の記事をご参考ください。

RubyのDir.deleteメソッドを解説

無事実行が完了しました。
sampleディレクトリを確認します。
RubyのDir.deleteメソッドを解説

指定した2ディレクトリが削除できていることが確認できました!

まとめ:Dir.deleteメソッドを使ってみよう!

以上がDir.deleteメソッドについての解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました