Ubuntu终端查询已安装包时出现报错:命令行选项'n'(来自-installed)无法与其他选项组合使用
别担心,你的系统完全没问题!
作为Ubuntu新手,碰到命令语法错误太正常了,咱们来逐个分析你遇到的问题:
1. 为什么sudo apt list all没输出内容?
这个命令的语法有误,apt list并不接受all作为单独参数。如果想要列出系统中所有可安装和已安装的软件包,直接执行不带参数的apt list即可(不过这个输出量极大,建议搭配分页工具:apt list | less);如果要显示每个包的所有版本,需要用apt list --all-versions。
2. 为什么sudo apt list -installed和sudo apt-get list -installed会报错?
这两个错误的核心原因是参数格式写错了:
apt命令中的长格式参数需要用两个短横线开头,比如--installed,而你写成了-installed(单个短横线)。系统会把-installed拆成单个字母的短参数(比如-i、-n、-s等),其中-n参数和list命令不兼容,所以才会弹出Command line option 'n' [from -installed] is not understood...的错误。- 另外,
apt-get并没有list这个子命令,它是apt工具特有的功能,所以apt-get list本身就是无效命令。
正确的命令是什么?
如果想列出所有已安装的软件包,用下面任意一个命令都可以:
- 现代
apt命令风格:sudo apt list --installed(输出简洁,适合快速查看) - 传统
dpkg命令:dpkg -l(输出更详细,包含包状态、版本等信息) - 如果你想搜索特定已安装包,可以搭配
grep:apt list --installed | grep 你的包名
关于系统损坏的担忧
完全不用慌!这些错误命令只是语法不符合要求,apt/apt-get在识别到语法错误时,不会执行任何修改系统的操作,只会返回错误提示。你的系统没有受到任何损害~
内容的提问来源于stack exchange,提问作者Milan Oinam




