首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当执行"sudo智能更新& sudo智能升级“时&& concatenator停止工作。为什么会发生这种事?

当执行"sudo智能更新& sudo智能升级“时&& concatenator停止工作。为什么会发生这种事?
EN

Ask Ubuntu用户
提问于 2013-05-02 18:06:16
回答 1查看 1.9K关注 0票数 0

与&&级联器有关的问题。它停止了连接。

我跑了:

代码语言:javascript
复制
sudo add-apt-repository ppa:igorgomes/ppa
sudo aptitude update

aptitude update命令开始生成屏幕输出错误(我不记得要记录这个错误),从那时起,序列sudo aptitude update && sudo aptitude upgrade停止工作。具体而言,第一个命令已执行,但第二个命令没有执行。

我可以通过删除文件夹“/etc/apt/ so es.list.d”上的适当文件来修复它,这样aptitude update命令就可以再次正常工作,因此,sudo aptitude update && sudo aptitude upgrade组合‘也可以运行。

问题已经解决了,但我真的很好奇,为什么会这样呢?这不是第一次连接者&&停止了对我的工作,我从来没有发现它背后的逻辑。有谁能查出原因吗?

提前谢谢你

牙髓

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2013-05-06 17:19:52

我只是在学习另一件事时得到了正确的答案,所以我会自己回答。

&&意味着,只有在成功执行第一个命令时,第二个命令才会运行。如果第一个命令抛出错误(这意味着退出1),则连接程序不会将操作传递给序列中的下一个命令。

请记住,如果在屏幕输出(前景)上看到错误,或者看不到屏幕输出(背景),这并不重要。当是第二种情况时,即使您没有注意到,也会向shell解释器抛出错误。

以检查命令是否返回错误。只需单独执行该命令,然后执行echo $?。如果它返回1,则命令失败,您必须找出该命令的错误所在并修复它。

执行sudo aptitude update; sudo aptitude upgrade是可能的,以避免出现上述问题,但是对于任何好奇的人来说,您将知道发生了什么。

如果您想要更多关于命令退出的信息,可以检查页面,如:http://tldp.org/LDP/abs/html/exit-status.html

(对此有很多解释,所以如果不满意,就没有理由不谷歌搜索)

不管怎样,谢谢你们!你给予了相当有价值的帮助:)

票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/289724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档