Saat menjalankan skrip, saya ingin membuat file sementara di /tmp
direktori.
Setelah eksekusi skrip itu, skrip itu akan dibersihkan.
Bagaimana melakukannya dalam skrip shell?
Jawaban yang Diterima:
tmpfile=$(mktemp /tmp/abc-script.XXXXXX)
: ...
rm "$tmpfile"
Anda dapat memastikan bahwa file dihapus saat skrip keluar (termasuk penghentian dan kerusakan) dengan membuka deskriptor file ke file dan menghapusnya. File tetap tersedia (untuk skrip; tidak benar-benar untuk proses lain tetapi /proc/$PID/fd/$FD
adalah solusi) selama deskriptor file terbuka. Ketika ditutup (yang dilakukan kernel secara otomatis saat proses keluar) sistem file menghapus file tersebut.
tmpfile=$(mktemp /tmp/abc-script.XXXXXX)
exec 3>"$tmpfile"
rm "$tmpfile"
: ...
echo foo >&3
Bagaimana Cara Membuat Kotak Pesan Dari Baris Perintah?
Linux – Diagram Kernel Linux Vs. Alat Kinerja?