最近在命令行安装软件时,经常弹出来dpkg警告,积少成多,终于变成了3000多行,试了网上说的给info文件夹备份改名的方法,并无卵用,只能上Google看看,果然瞎猫碰上了死耗子,通过下面几个步骤解决了问题.
首先在同一目录下,新建三个文件,分别是txt,fixit.py,fix.sh.
一.txt
将问题复制到txt中.以下是我的txt文件的内容
dpkg: 警告: 无法找到软件包 wine-stable-amd64 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 linuxqq 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 unixodbc-dev 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libk4a1.1 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libodbc1:amd64 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libjpeg62-turbo:amd64 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libjpeg62-turbo:i386 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 wine-stable 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 odbcinst 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libk4a1.1-dev 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 wine-stable-i386:i386 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 nautilus-nutstore-public 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 k4a-tools 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 codemeter 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 winehq-stable 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 libk4a1.3 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 ensenso-sdk 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 unixodbc 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 odbcinst1debian2:amd64 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 sogoupinyin 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
dpkg: 警告: 无法找到软件包 baidunetdisk 的文件名列表文件,现假定该软件包目前没有任何文件被安装在系统里。
二.fixit.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
def main():
fix = open('fix.sh', 'w+')
for line in open("txt"):
pkg = re.match(re.compile('''dpkg: 警告: 无法找到软件包 (.+) '''), line)
if pkg:
cmd = "sudo apt-get -y install --reinstall " + pkg.group(1)
fix.write(cmd + '\n')
print("OK")
if __name__ == "__main__":
main()
三.执行fixit.py
python fixit.py
四.执行fix.sh
执行完三之后,fix.sh中变成了以下代码,执行fix.sh
sudo apt-get -y install --reinstall wine-stable-amd64
sudo apt-get -y install --reinstall linuxqq
sudo apt-get -y install --reinstall unixodbc-dev
sudo apt-get -y install --reinstall libk4a1.1
sudo apt-get -y install --reinstall libodbc1:amd64
sudo apt-get -y install --reinstall libjpeg62-turbo:amd64
sudo apt-get -y install --reinstall libjpeg62-turbo:i386
sudo apt-get -y install --reinstall wine-stable
sudo apt-get -y install --reinstall odbcinst
sudo apt-get -y install --reinstall libk4a1.1-dev
sudo apt-get -y install --reinstall wine-stable-i386:i386
sudo apt-get -y install --reinstall nautilus-nutstore-public
sudo apt-get -y install --reinstall k4a-tools
sudo apt-get -y install --reinstall codemeter
sudo apt-get -y install --reinstall winehq-stable
sudo apt-get -y install --reinstall libk4a1.3
sudo apt-get -y install --reinstall ensenso-sdk
sudo apt-get -y install --reinstall unixodbc
sudo apt-get -y install --reinstall odbcinst1debian2:amd64
sudo apt-get -y install --reinstall sogoupinyin
sudo apt-get -y install --reinstall baidunetdisk
执行下列命令
./fix.sh