Dalam jawaban untuk Secara manual mengatur jumlah mendengarkan lagu di Banshee? , ini menjelaskan cara mendapatkan di database yang digunakan banshee untuk menyimpan semua informasi trek.
Setelah Anda terhubung ke database, pada tabel permintaan eksekusi, tempel
select tweaked_track, count(*) from
(select replace(replace(replace(title, ' ', ''), '-', ''), '.', '') as tweaked_track
from coretracks)
group by tweaked_track
order by 2, 1 desc;
ke dalam kotak string SQL, lalu klik 'jalankan permintaan'. Ini akan menunjukkan semua trek yang Anda miliki dengan judul yang sama dengan mengabaikan spasi, tanda hubung, dan titik. Jika ada karakter lain yang ingin Anda abaikan, tambahkan mereka ke kueri dengan pola yang sama. (IE tambahkan replace(
sebelum "ganti" pertama dan setelah ")" pada baris itu, tambahkan , '[character you want removed]', '')
.
(Saya tidak tahu seberapa banyak yang Anda ketahui tentang sql - jika Anda memerlukan detail lebih lanjut, kirimkan komentar.)
Ini akan memberi Anda daftar judul. Anda harus benar-benar menghapusnya sendiri.
Mungkin ada cara yang lebih baik untuk melakukan ini, tetapi jika ada, saya tidak tahu tentang itu.
Setelah Anda memiliki daftar besar file yang akan dihapus (baik dari metode saya atau dari yang fdupes
lain telah disebutkan), masukkan daftar file yang ingin Anda hapus ke dalam direktori teks. Pastikan salah satu dari yang berikut ini benar:
Opsi # 1: Nama file berisi path lengkap. Misalnya file tersebut mungkin berisi:
/home/doneill/music/weird_al/duped_file.mp3
/home/doneill/music/weird_al/another_dupe.mp3
/home/doneill/music/bach/baroque_dupe.mp3
Opsi # 2: Nama file berisi path relatif, dan file dengan daftar nama file disimpan di folder induk. Misalnya, jika daftar file Anda disimpan /home/doneill/music/
, itu akan berisi:
weird_al/duped_file.mp3
weird_al/another_dupe.mp3
bach/baroque_dupe.mp3
Dalam kedua kasus, buka jendela terminal, dan ubah ke folder yang berisi file dengan daftar cd /home/doneill/music/
misalnya.
Ketikkan:
for a in `cat filelist.txt`; do echo $a; done
(Mengganti filelist.txt dengan nama file dengan daftar) Ini harus memuntahkan daftar semua file yang ingin Anda hapus. Luangkan waktu sejenak untuk memeriksa daftar. Jika benar, ketikkan:
for a in `cat filelist.txt`; do rm $a; done
Ini pada dasarnya memberitahu komputer Anda: untuk setiap baris dalam file filelist.txt
, hapus file dengan nama yang tercantum.