当你在使用apt时,例如“apt -h”会提示“本APT具有超级牛”

先把牛放一放,先学习以下关于APT的知识。

APT

高级打包工具(英语:Advanced Packaging Tools,缩写为APT)是Debian及其派生的Linux软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Unix系统上管理软件的过程。APT最早被设计成dpkg的前端,用来处理deb格式的软件包。现在经过APT-RPM组织修改,APT已经可以安装在支持RPM的系统管理RPM包。

构成

APT由以下的几个主要的命令构成:

在Debian系统中,APT建构于dpkg之上。

前端

APT拥有不少的前端程序:

名称 运行界面 最新版本
aptitude 字符终端 0.2.15.9-2
Synaptic 图形界面 0.75.13
GNOME 软件 图形界面 0.4.7-1.2
wajig 兼容 2.0.25

示例

搜索

在终端机里输入:

  • apt-cache search <package>

这样系统会列出与<package>名称相匹配的包。

安装

在终端机里输入:

  • apt-get install <package>

这样系统会自动下载<package>以及所有的依存包,同时进行包的安装。

移除

在终端机里输入:

  • apt-get remove [--purge] <package>

这样系统会自动移除<package>以及任何依此存包的其它包。 --purge指明包应被完全清除,即。

升级

在终端机里输入:

  • apt-get update

这样系统会自动由映射点更新包列表,如果想安装最新包,必须先运行一次。每次修改了 /etc/apt/sources.list后,也必须运行一次。

在终端机里输入:

  • apt-get upgrade 

这样系统会自动将所有已经安装在系统内的包升级为最新版本。如果一个包改变了依存关系,而需要安装一个新的包时,它将不会被升级,而是标识成hold。如果某个包被设置hold标号,就不会被升级。

在终端机里输入:

  • apt-get dist-upgrade

和apt-get upgrade类似,dist-upgrade会安装和移除包来满足依存关系,因此具有一定的危险性。

彩蛋

在终端输入apt-get -h会在末尾出现“本APT具有超级牛力(This APT has super cow power)。

在终端输入apt-get moo会在屏幕上显示一头牛。

                 (__)
(oo)
/------\/
/ | ||
* /\---/\
~~ ~~
..."Have you mooed today?"...

与apt-get相似的一个叫做aptitude的程序在aptitude -h的末尾加上了“这个aptitude没有超级牛力”

在后面加上moo(即输入aptitude moo),并且分别加上选项“-v”,“-vv”,“-vvv”,“-vvvv”,“-vvvvv”,“-vvvvvv”(即输入aptitude -v moo;输入aptitude -vv moo;等等),则会有如下输出:

$ aptitude moo
本程序中没有复活节彩蛋。
$ aptitude -v moo
本程序中确实没有复活节彩蛋。
$ aptitude -vv moo
我不是已经告诉您本程序中没有复活节彩蛋了吗?
$ aptitude -vvv moo
停下来!
$ aptitude -vvvv moo
好吧,好吧,如果我给您复活节彩蛋,您会停手吗?
$ aptitude -vvvvv moo
好吧,您赢了。
/----\
-------/ \
/ \
/
|-----------------/ --------\
----------------------------------------------
$ aptitude -vvvvvv moo
这是什么?这当然是一只大象被一条蛇吞吃了。

而apt系列的另一个名为"apt-build"的软件包也具有相似的功能:

$ apt-build moo
(__) ~
(oo) /
_____\/___/
/ /\ / /
~ / * /
/ ___/
*----/\
/ \
/ /
~ ~
..."Have you danced today? Discow!"...
(意为:今天你跳舞了吗?迪斯可!)

软件编写者特地将Disco(迪斯可)一词改为"Discow",以体现"Cow"(奶牛)之意。

参考链接:维基百科——APT

APT和它的超级牛力的更多相关文章

  1. 76-Bears/Bulls Power,熊力/牛力震荡指标.(2015.7.1)

    Bears/Bulls Power 熊力/牛力震荡指标 Power,熊力/牛力震荡指标.(2015.7.1)" title="76-Bears/Bulls Power,熊力/牛力震 ...

  2. 超级码力编程赛带着6万奖金和1200件T恤向你跑来了~

    炎炎夏日,总是感觉很疲劳,提不起一点精神怎么办?是时候参加一场比赛来唤醒你的激情了!阿里云超级码力在线编程大赛震撼携手全国数百所高校震撼来袭. 它来了,它来了,它带着60000现金和1200件T恤向你 ...

  3. IntelliJ IDEA 15款 神级超级牛逼插件推荐(超赞,谁用谁知道)

    满满的都是干货  所有插件都是在 ctrl+alt+s 里的plugins 里进行搜索安装 1.CodeGlance 代码迷你缩放图插件 2. Codota 代码提示工具,扫描你的代码后,根据你的敲击 ...

  4. 温故而知新 css + html 超级牛逼的居中策略

    该方法甚至可以解决img内容居中的问题 套路:最外层div宽度为居中内容所占的宽度(通常是1170px),并且使其居中(margin:auto) 里层的div宽度为全屏(通常是1920px;)再mar ...

  5. hibernate 超级牛x的公共类

    想法,能支持in查询和 =查询的 公共方法,类似下面实现 用 泛型 实现 参数 getList(String[] params,Object[] values){} for(int i=0;i< ...

  6. 发现XMind一个超级牛逼的功能

    本来想要自己手动建立下文件夹的结构图,一不小心发现了一个大惊喜. 比如想要看一下360Downloads文件夹下的文件结构,可以先创建一个名叫360Downloads的主节点,然后把其文件夹下的文件直 ...

  7. 超级牛X的免费开源小工具之tldr

    github介绍:http://tldr-pages.github.io/ github源码:https://github.com/tldr-pages/tldr 什么是tldr? 新命令行世界?还是 ...

  8. [USACO15FEB]Superbull 超级牛

    题意概况 题目描述 \(Bessie\)和她的朋友们正在一年一度的\(Superbull\)锦标赛中打球,而\(Farmer John\)负责让比赛尽可能激动人心. 总共有 \(N\) 支队伍 \(1 ...

  9. Python超级码力在线编程大赛初赛题解

    P1 三角魔法 描述小栖必须在一个三角形中才能施展魔法,现在他知道自己的坐标和三个点的坐标,他想知道他能否施展魔法 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后, ...

随机推荐

  1. 将Opencv java中的Mat通过jni传递到C++中的方法

    public native void FindFeatures(long matAddrGr, long matAddrRgba); ... mRgba = new Mat(height, width ...

  2. 一、初识mybatis

    orm框架 1.配置文件(配置别名.mapper xml文件.数据库连接.事务) 2.创建SqlSessionFactory,创建SqlSession 3.创建model,创建Mapper xml文件 ...

  3. 将Gridview导出到Excel

    GridViewToExcel(EdceExcelGV, "application/ms-exce","xxxxxx表"); protected void Gr ...

  4. FZU 2218【状压】

    题意: 给出长为n的字符串,含有前k种小写字母,求两个不含重复元素的连续子串,使得他们的长度乘积最大. 思路: 字符种类16 ->(套路) 状压 暴力2000*2000得所有连续子串的长度,得每 ...

  5. JavaWeb之用户数据回显

  6. moment.js插件的简单上手使用

    开发过程中看长篇幅的技术文档是件多么影响多发效率的事情丫,哼哼,人家明明只是想用个简单的功能而已丫,下面文档很好的解决了这个问题,yeah~~~ 一.monent.js时间插件 1.Moment.js ...

  7. 4.高级数据过滤 ---SQL

    一.AND操作符 要通过不止一个列进行过滤,可以使用A ND操作符给WHERE子句附加条件. SELECT prod_id, prod_price, prod_name FROM Products ; ...

  8. 牛客网Java刷题知识点之什么是代码块、普通代码块、静态代码块、同步代码块、构造代码块以及执行顺序

    不多说,直接上干货! 这种形式的程序段我们将其称之为代码块,所谓代码块就是用大括号({})将多行代码封装在一起,形成一个独立的数据体,用于实现特定的算法.一般来说代码块是不能单独运行的,它必须要有运行 ...

  9. 译:Java 中的正则表达式性能概述

    原文链接:https://www.baeldung.com/java-regex-performance 作者: baeldung 译者:Darren Luo 1. 概述 在本快速教程中,我们将展示模 ...

  10. Vue2之页面 、js 、css分离

    在编写vue的时候,页面数据少的时候,可以将所有的js和css都可以直接写在页面上,但是页面数据多,js.css的方法和样式多的时候,都放在一个页面的时候,就显得页面vue十分的臃肿. 所以写项目的时 ...