与&&级联器有关的问题。它停止了连接。
我跑了:
sudo add-apt-repository ppa:igorgomes/ppa
sudo aptitude updateaptitude update命令开始生成屏幕输出错误(我不记得要记录这个错误),从那时起,序列sudo aptitude update && sudo aptitude upgrade停止工作。具体而言,第一个命令已执行,但第二个命令没有执行。
我可以通过删除文件夹“/etc/apt/ so es.list.d”上的适当文件来修复它,这样aptitude update命令就可以再次正常工作,因此,sudo aptitude update && sudo aptitude upgrade组合‘也可以运行。
问题已经解决了,但我真的很好奇,为什么会这样呢?这不是第一次连接者&&停止了对我的工作,我从来没有发现它背后的逻辑。有谁能查出原因吗?
提前谢谢你
牙髓
发布于 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
(对此有很多解释,所以如果不满意,就没有理由不谷歌搜索)
不管怎样,谢谢你们!你给予了相当有价值的帮助:)
https://askubuntu.com/questions/289724
复制相似问题