Coba ini sebagai gantinya karena itu akan mengambil output Anda dan menjadikannya satu garis raksasa dengan spasi yang memisahkan nama file.
dpkg --get-selections | grep -v deinstall | awk '{print $1}' > list.log
awk '$1=$1' ORS=' ' list.log > newlist.log
apt-get install --reinstall $(cat newlist.log)
Satu-satunya perubahan pada posting asli Anda adalah menambahkan dalam pernyataan awk kedua, yang mungkin bisa dilakukan sejalan dengan yang pertama untuk membuat file yang Anda inginkan.
Perubahan ini akan memaksa apt-get untuk mengunduh ulang paket dengan benar dan setiap dependensi yang hilang yang tidak diinstal pertama kali dan menginstalnya kembali secara berurutan.
Jika kita membuatnya sejajar, saya percaya itu akan terlihat seperti ini maka:
dpkg --get-selections | grep -v deinstall | awk '{print $1}' | awk '$1=$1' ORS=' ' > list.log
Dan kemudian pastikan Anda benar-benar membuat sistem memiliki paket yang benar (atau terbaru), bersihkan cache apt, perbarui dan kemudian unduh kembali semua file (Anda dapat melewati dua langkah pertama jika Anda hanya ingin apa yang Anda miliki di cache diinstal ulang):
apt-get clean && apt-get update && apt-get install --reinstall $(cat list.log)
Saya memiliki lebih dari 2k paket yang diinstal pada sistem yang saya tingkatkan yang mengalami hangup. Menggunakan dpkg --configure -a menyelesaikan instalasi (itu masih dalam tahap akhir). Saya kemudian menjalankan ini untuk membuat semuanya menginstal ulang dengan benar.
Atau seperti yang dinyatakan di /superuser/298912/reinstall-debian-while-keeping-installed-packages-and-data :
sudo apt-get install --reinstall $(dpkg --get-selections | grep -w 'install$' | cut -f1)
Pastikan Anda menjalankan "init 2" terlebih dahulu sebelum menginstal ulang, karena beberapa komponen X atau window manager favorit Anda mungkin tidak suka diinstal ulang.