我想运行此命令(请参阅4
此处的部分https://help.ubuntu.com/community/AptGet/Howto#Removal_commands):
dpkg -l | grep '^rc' | awk '{print $2}' | xargs dpkg --purge
sudo
我在开始时使用但无论如何我收到一个错误:
user@user-desktop:~$ sudo dpkg -l | grep '^rc' | awk '{print $2}' | xargs dpkg --purge
[sudo] password for user:
dpkg: error: requested operation requires superuser privilege
为什么sudo
不起作用?我还应该输入什么?
答案1
sudo
仅适用于单个命令,而不是整个管道。 在您的例子中,该命令以超级用户身份运行dpkg -l
- 这是不必要的。
相反,管道中真正需要超级用户访问权限的命令是dpkg --purge
,因此sudo
直接将其添加到其前面。
dpkg -l | grep '^rc' | awk '{print $2}' | xargs sudo dpkg --purge
顺便说一下,awk
可以使用正则表达式过滤行就像这样grep
做一样,这样您可以保存一个命令:
dpkg -l | awk '/^rc/{print $2}' | xargs sudo dpkg --purge
答案2
尝试以 root 身份登录,以获得超级权限,您可以输入以下命令:
sudo -i
然后写 (复制/粘贴 :: Ctrl + C / Ctrl + Shift + V <-- 在终端中粘贴)在终端中输入命令,它应该可以工作
答案3
sudo -i dpkg -l | grep '^rc' | awk '{print $2}' | xargs dpkg --purge
这可能会运行你的命令根权限。Sudo 和 root 不同。参考