Ruby menyidiakan kelas Dir dan FileUtils untuk menangani kebutuhan-kebutuhan program yang berkaitan dengan direktori. Selain untuk direktori kelas FileUtils juga berisi daftar metode yang berguna untuk menangani operasi-operasi terhadap file.
Direktori baru dapat dibuat dengan cara memanggil metode mkdir( ) dari kelas Dir.
#!/usr/bin/ruby
##########################################################################
# Nama File : membuat_dir.rb
##########################################################################
print "Masukkan nama direktori: "
dir = gets.chop
# membuat direktori baru
Dir.mkdir(dir)
puts "\nDirektori #{dir} berhasil dibuat"
Hasil program:
Masukkan nama direktori: Ruby Pedia
Direktori Ruby Pedia berhasil dibuat
Kode diatas akan membuat direktori baru didalam direktori aktif yang namanya ditentukan oleh si pengguna.
Untuk mengubah nama direktori, kita dapat menggunakan metode mv( ) dari kelas FileUtils
#!/usr/bin/ruby
##########################################################################
# Nama File : mengubah_dir.rb
##########################################################################
require 'fileutils'
print "Masukkan nama direktori lama: "
dir1 = gets.chop
print "Masukkan nama direktori baru: "
dir2 = gets.chop
# proses mengubah nama direktori
FileUtils.mv(dir1, dir2)
puts "\nNama diretori #{dir1} berhasil diubah ke #{dir2}"
Hasil program:
Masukkan nama direktori lama: Ruby Pedia
Masukkan nama direktori baru: Belajar di Ruby Pedia
Nama diretori Ruby Pedia berhasil diubah ke Belajar di Ruby Pedia
Direktori yang sebelumnya sudah ada di dalam disk dapat dihapus dengan metode delete( ) dari kelas Dir. Untuk menggunakan metode ini, pastikan itu adalah direktori kosong (tidak berisikan file).
#!/usr/bin/ruby
##########################################################################
# Nama File : menghapus_dir.rb
##########################################################################
dir = '/Users/maulayyacyber/Desktop/Ruby/native-ruby/Belajar di Ruby Pedia'
# proses menghapus direktori
Dir.delete(dir)
puts "\nDirektori #{dir} telah berhasil dihapus"
Hasil program:
Direktori /Users/maulayyacyber/Desktop/Ruby/native-ruby/Belajar di Ruby Pedia telah berhasil dihapus
Pada saat kode diatas dijalankan / dieksekusi, program akan menghapus direktori Belajar di Ruby Pedi yang terdapat di dalam direktori /Users/maulayyacyber/Desktop/Ruby/native-ruby/.