# this works:
rm foo
# versus this, which doesn't:
rm foo/
Pada dasarnya, Anda perlu memintanya untuk menghapus file , bukan menghapus direktori . Saya percaya perbedaan antara rm
dan rmdir
ada karena perbedaan dalam cara perpustakaan C memperlakukan masing-masing.
Bagaimanapun, yang pertama harus bekerja, sedangkan yang kedua harus mengeluh tentang foo sebagai direktori.
Jika tidak berfungsi seperti di atas, maka periksa izin Anda. Anda memerlukan izin menulis ke direktori yang berisi untuk menghapus file.
gunakan perintah "batalkan tautan" dan pastikan tidak untuk memiliki / di akhir
$ unlink mySymLink
unlink() menghapus nama dari sistem file. Jika nama itu adalah tautan terakhir ke file dan tidak ada proses yang membuka file, file akan dihapus dan ruang yang digunakannya tersedia untuk digunakan kembali. Jika nama adalah tautan terakhir ke file tetapi proses apa pun masih membuat file terbuka, file akan tetap ada hingga deskriptor file terakhir yang merujuknya ditutup.
Saya pikir ini mungkin bermasalah jika saya membacanya dengan benar.
Jika nama merujuk ke tautan simbolis, tautan tersebut akan dihapus.
Jika nama merujuk ke soket, fifo, atau perangkat, nama untuk itu dihapus tetapi proses yang membuka objek dapat terus menggunakannya.
https://linux.die.net/man/2/unlink