Pertama: berhenti menggunakan drive ini sekarang . Tidak apa-apa untuk me-remount-nya read-only, tapi pastikan untuk tidak menulis lagi. Ya, Anda sudah menghapus gambar. Mereka mungkin dapat dipulihkan, tetapi semakin Anda terus menggunakan drive itu, semakin sedikit kesempatan Anda untuk memulihkan apa pun.
Perintah Anda berjalan mv pic1.jpg pictures
,, mv pic2.jpg pictures
dll. Setiap doa mv
menimpa file yang saat ini dinamai pictures
oleh gambar lain.
Memindahkan file (dalam sistem file yang sama) berarti melepaskannya dari direktori yang berisi dan melampirkannya ke direktori target dengan nama baru. Jadi tidak ada data file yang dimodifikasi atau dihapus oleh perintah ini, hanya entri direktori untuk gambar yang telah hilang.
Anda dapat menjalankan alat yang menjelajahi ruang kosong sistem berkas Anda dan mencari hal-hal yang terlihat seperti jpegs. Untungnya, setiap file jpeg dimulai dengan header yang dapat dikenali. Alat yang mencari konten yang dihapus disebut alat ukiran . Ada beberapa di Ubuntu, termasuk recoverjpeg , terutama , TestDisk , ... Jika foto adalah pada partisi rumah yang terpisah atau pada drive eksternal, instal satu atau lebih dari paket tersebut dan mengarahkan mereka ke partisi dengan gambar-gambar dihapus.
Jika foto ada di disk sistem Anda, Anda harus segera berhenti menggunakan sistem Anda. Gunakan komputer lain untuk mengunduh CD atau USB langsung dan boot dari sana. Setiap CD langsung yang menyertakan testdisk harus sesuai dengan tagihan, tetapi beberapa lebih mudah digunakan daripada yang lain. CD Penyelamatan Sistem adalah CD penyelamatan sistem untuk tujuan umum yang baik. Ubuntu Rescue Remix mungkin lebih akrab bagi pengguna Ubuntu.
Untuk referensi di masa mendatang, biasakan menggunakan mv -i
kecuali Anda bertujuan untuk menimpa file. Anda mungkin sudah memiliki alias untuk mv
, tetapi itu hanya menendang ketika Anda mengetik mv
langsung pada baris perintah, bukan ketika mv
dipanggil oleh skrip atau oleh find
perintah.
$ : >pictures
$ mv -i foo.jpg pictures
mv: overwrite `pictures'?
Juga, jika Anda meletakkan /
setelah yang seharusnya menjadi nama direktori, Anda akan mendapatkan kesalahan jika direktori tidak ada, atau jika ada file dengan nama itu yang bukan direktori.
$ : >pictures
$ mv foo.jpg pictures/
mv: cannot move `foo.jpg' to `pictures/': Not a directory
$ rm pictures
$ mv foo.jpg pictures/
mv: cannot move `foo.jpg' to `pictures/': Not a directory
Untuk menghindari jebakan find
, Anda dapat menggunakan fitur direktori traversal rekursif bash sebagai gantinya. Anda harus menyalakannya terlebih dahulu dengan perintah shopt -s globstar
(Anda dapat menambahkan baris ini ke~/.bashrc
. Lalu:
mv **/*.jpg pictures/
(Perhatikan bahwa dalam bash, **/
juga melintasi tautan simbolik ke direktori, dan tidak ada cara untuk mematikannya. Jika Anda menginginkan traversal rekursif yang tidak melihat melalui tautan simbolik ke direktori, gunakan zsh atau temukan.)