我打开了一个终端,将整个命令放在引号中,它回复“未找到命令”。发生了什么?

我打开了一个终端,将整个命令放在引号中,它回复“未找到命令”。发生了什么?

当我打开终端时,我得到了这个:

Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
leah@leah-pc ~>

...然后我尝试运行一个命令:

leah@leah-pc ~> 'dpkg --configure -a' 
dpkg --configure -a: command not found

... 效果不如预期。我下一步该怎么做?

答案1

您似乎正在单引号内运行命令,其中包含引号,例如'dpkg --configure -a'双引号"..."也会导致相同的结果)...这将导致整个命令(包括它的选项和参数)被 shell 作为单个标记读取并按此方式处理,即 shell 将尝试调用该命令dpkg --configure -a而不是调用该命令dpkg并将选项--configure-a...传递给它,这是行不通的。

尝试删除引号,而不是像dpkg --configure -a并将其与该操作一起使用,sudo因为该操作需要提升的权限才能运行,如下所示:

sudo dpkg --configure -a

...它应该可以工作。

相关内容