Fokus panduan ini adalah membahas keberadaan file di sistem Anda melalui skrip bash:
Cara memeriksa keberadaan file menggunakan skrip bash:
1) Dengan memasukkan nama file di terminal:
Pertama, kita perlu membuat file skrip bash, gunakan perintah yang disebutkan di bawah ini:
$ sentuh file tes test.SHNama file yang saya buat adalah “testfile.sh”, “.sh” menunjukkan file skrip shell:
Buka "file tes".sh” di editor teks apa pun. Kemudian tulis scriptnya, simpan dengan menekan “save”.
Salah satu caranya adalah menemukan file dengan meminta nama file dari pengguna di terminal.
Gunakan “-f” untuk memeriksa keberadaan file.
Tulis skrip di bawah ini:
#!/bin/bashecho "Masukkan nama file anda"
baca file baru1
jika [ -f "$newfile1" ]
kemudian
echo "Berkas ditemukan"
lain
echo "File tidak ditemukan"
fi
Kembali ke terminal dan jalankan file untuk mencetak output:
./nama file.SHPesan izin ditolak akan ditampilkan di terminal.
Jadikan itu dapat dieksekusi dengan menjalankan perintah yang disebutkan di bawah ini:
$chmod +x file tes.SH
Masukkan nama file, dan itu akan mencetak output:
2) Dengan memasukkan nama file saat menulis skrip:
Cara lain untuk menemukan file dengan memberikan nama file saat menulis skrip. Kami memiliki tiga cara untuk memeriksa ketersediaan file. Yang pertama menggunakan perintah "test", yang kedua menggunakan "jika" dengan ekspresi dalam tanda kurung siku, dan yang ketiga juga dengan "jika" tetapi tanda kurung siku ganda seperti yang ditunjukkan di bawah ini:
- “uji EKSPRESI.”
- “jika [EKSPRESI]”
- “jika [[EKSPRESI]]”
Mari kita pahami dengan contoh:
1) tes [ Ekspresi ]
Salin skrip yang diberikan dan rekatkan ke editor, simpan:
nama file=file1
jika tes -f "$namafile";
kemudian
echo "$file telah ditemukan."
lain
echo "$file belum ditemukan"
fi
Keluaran:
Karena tidak ada file seperti itu di direktori saya, oleh karena itu kode menampilkan pesan "File tidak ditemukan".
2) jika [ Ekspresi ]
Salin skrip berikut untuk memeriksa apakah file ada atau tidak:
#!/bin/bashnama file=file saya.txt
if [ -f "$namafile" ];
kemudian
echo "$nama file telah ditemukan."
lain
echo "nama file tidak ditemukan"
fi
Keluaran:
3) jika [[ Ekspresi ]]
Salin skrip yang ditulis di bawah ini dan tempel di terminal:
#!/bin/bashnama file=file tes
if [[ -f "$namafile" ]];
kemudian
echo "$nama file telah ditemukan."
lain
echo "$nama file tidak ditemukan"
fi
Keluaran:
Untuk memeriksa direktori:
3) Dengan memasukkan nama direktori saat menulis skrip
Menggunakan "-d” tandai untuk memeriksa keberadaan direktori.
Dalam skrip yang disebutkan di bawah ini, "dir11" adalah variabel tempat Anda menyimpan file yang Anda temukan; dalam contoh ini, saya ingin memeriksa nama direktori "testDir" ada atau tidak.
#!/bin/bashdir11=testDir
jika [ -d "$dir11" ]
kemudian
echo "Direktori telah ditemukan"
lain
echo "Direktori tidak ditemukan"
fi
Keluaran:
2) Dengan memasukkan nama file di terminal:
Saat Anda menjalankan perintah di terminal untuk memeriksa apakah direktori itu ada atau tidak, Anda diharuskan memasukkan nama direktori yang Anda cari:
echo "ketik nama direktori Anda."
baca Dir1
jika [ -d "Dir1" ]
kemudian
echo "direktori telah ditemukan"
lain
echo "direktori tidak ditemukan"
fi
Keluaran:
Memeriksa file tanpa menggunakan pernyataan "jika":
Perintah "test" dapat dijalankan tanpa pernyataan "jika". Ini hanya akan menampilkan output jika file tersebut ada; jika tidak, tidak akan ada output:
Tulis skrip:
- tes -f myfile.txt && echo "file telah ditemukan"
- [ -f file saya.txt ] && echo "$file telah ditemukan."
- [[ -f file saya.txt ]] && echo "$file telah ditemukan."
Keluaran:
Memeriksa direktori tanpa menggunakan pernyataan "jika":
Gunakan pernyataan yang disebutkan di bawah ini untuk memeriksa direktori ada atau tidak:
- [[ -d testDir ]] && echo "direktori memang ada"
- 2) [ -d testDir ] && echo "direktori memang ada"
Keluaran:
Memeriksa beberapa file/Direktori:
1) Memeriksa beberapa file dengan pernyataan "jika":
Gunakan flag “-a” untuk memeriksa keberadaan berbagai file alih-alih menggunakan pernyataan “if/else” bersarang:
jika [ -f file_baru.txt -a -f file baru.txt ]; kemudian
echo "Kedua file ada."
fi
Cara lain adalah:
#!/bin/bashjika [[ -f file_baru.txt && -f file baru.txt ]]; kemudian
echo "Kedua file ada."
fi
Keluaran:
2) Memeriksa banyak file tanpa menggunakan pernyataan "jika":
Gunakan pernyataan berikut untuk memeriksa beberapa file secara bersamaan 1tanpa menggunakan "jika":
- [[ -f file_baru.txt && -f file baru.txt ]] && echo “Kedua file keluar.”
- [[ -f file_baru.txt && -f file baru.txt ]] && echo “Kedua file keluar.”
Keluaran:
Kesimpulan:
Artikel ini telah menunjukkan cara menggunakan skrip bash untuk memeriksa file atau direktori. Kami menggunakan opsi berbeda untuk memeriksa ketersediaan file. Pertama, kami menggunakan perintah "test" dengan flag yang berbeda. Kemudian kami mempelajari penggunaan "if", "if-else" bersarang, dan tanpa pernyataan "if" untuk memeriksa file atau direktori. Kami juga melihat cara memeriksa banyak file atau direktori.