Di bawah ini tercantum beberapa fungsi standar untuk memanipulasi direktori:
opendir DIRHANDLE, EXPR # Buka direktori readdir DIRHANDLE # Baca direktori rewinddir DIRHANDLE # Posisikan penunjuk ke awal telldir DIRHANDLE # Kembalikan posisi saat ini dari direktori seekdir DIRHANDLE, POS # Temukan posisi POS yang ditentukan ke direktori closeir DIRHANDLE # Close direktori
Tampilkan semua file
Tampilkan semua file dalam direktori. Contoh berikut menggunakan operator glob, seperti yang ditunjukkan di bawah ini:
Contoh
#!/usr/bin/Perl # Tampilkan semua file di direktori /tmp $dir = " /tmp/* " ; milikku @file = gumpalan ( $dir ) ; ( @file ) { mencetak $ _ . # Tampilkan semua file yang diakhiri dengan .c di direktori /tmp $dir = " /tmp/*.c " ; @file = gumpalan ( $dir ) ; ( @file ) { mencetak $ _ . # Tampilkan semua file tersembunyi $ dir = " /tmp/.* " ; $dir ) ; ( @file ) { mencetak $ _ . # Tampilkan semua file di direktori /tmp dan /home $dir = " / tmp/* / home / * " ; $dir ) ; ( @file ) { mencetak $ _ . Contoh berikut dapat mencantumkan semua file di direktori saat ini:
Contoh
#!/usr/bin/Perl opendir ( DIR , ' . ' ) atau mati " Tidak dapat membuka direktori, $! " ; ( $file = bacadir DIR ) { mencetak " $file n " ; tutup DIR ; Jika Anda ingin menampilkan semua file yang diakhiri dengan .c di direktori /tmp, Anda dapat menggunakan kode berikut:
Contoh
#!/usr/bin/Perl direktori terbuka ( DIR , ' . ' ) atau mati " Tidak dapat
membuka direktori, $! " ; ( mengurutkan grep ( /^.*.c $ /, readdir ( DIR ) ) ) { mencetak " $_ n " ; tutup DIR ; Buat direktori baru
Kita dapat menggunakan fungsi mkdir untuk membuat direktori baru. Anda harus memiliki izin yang memadai untuk membuat direktori sebelum menjalankan:
Contoh
#!/usr/bin/Perl $dir = " /tmp/Perl " ; # Buat direktori Perl di bawah direktori /tmp mkdir ( $dir ) atau mati " Tidak dapat membuat direktori $dir ,
$! " ; print " Direktori berhasil dibuat n " ; hapus direktori
Kita dapat menggunakan fungsi rmdir untuk menghapus direktori. Diperlukan izin yang memadai untuk melakukan operasi ini. Selain itu, direktori yang akan dihapus harus berupa direktori kosong:
Contoh
#!/usr/bin/Perl $dir = " /tmp/Perl " ; # Hapus direktori Perl di bawah direktori /tmp rmdir ( $dir ) atau mati " Tidak dapat menghapus direktori $dir ,
$! " ; print " Direktori berhasil dihapus n " ; Beralih direktori
Kita dapat menggunakan fungsi chdir untuk berpindah direktori saat ini. Diperlukan izin yang memadai untuk melakukan operasi ini. Contohnya adalah sebagai berikut:
Contoh
#!/usr/bin/Perl $dir = " /home " ; # Pindahkan direktori saat ini ke direktori /home chdir ( $dir ) atau mati " Tidak
dapat berpindah direktori ke $dir , $! " ; " Direktori tempat anda berada saat ini adalah $dir n " ; Dengan mengeksekusi program di atas, hasil keluarannya adalah:
Direktori tempat Anda berada saat ini adalah /home