我试图让一个 Windows 程序在 PlayOnLinux 上运行,但它不起作用后,我用以下命令删除了 Wine:
sudo apt-get remove --purge wine*
我不假思索地同意移除机器上的所有包裹。有人能告诉我为什么它选择每个包而不是所有以字符串“wine”开头的包吗?
我正在运行 Linux Mint 16
答案1
如果当前目录中至少有一个名称以 开头的文件wine
,则wine*
命令中将展开到名称以 开头的文件列表wine
。如果没有这个文件,那么
sudo apt-get remove --purge wine*
被执行。apt-get install
和 的参数apt-get remove
是扩展正则表达式,而不是 shell 通配符;wine*
表示win
后跟任意数量的e
,并且由于这可以匹配包名称的任何部分,因此这意味着名称包含win
子字符串的任何包。当然,还有任何依赖于这些包的包。
如果您使用的是 KDE,那么您就会丢失该kde-window-manager
软件包。如果没有,您一定丢失了其他一些重要的包裹。也许libmate-window-settings1
哪个是哪个需要mate-control-center
哪个是哪个需要mate-desktop-environment-core
哪个丢失将使大多数 MATE 包变得多余。我检查了 Debian wheezy 包名称,Mint 可能有不同的集合,但你明白了。
要仅删除名称以 开头的包wine
,请使用
sudo apt-get purge '^wine'
确认前请仔细检查包裹清单。
你可能会更舒服资质,它有一个文本模式全屏前端。