一、功能作用

update-alternatives是dpkg的实用工具,用来维护系统命令的符号链接,以决定系统默认使用什么命令。

在Debian系统中,我们可能会同时安装有很多功能类似的程序和可选配置,如Web浏览器程序(firefox,konqueror)、窗口管理器(wmaker、metacity)和鼠标的不同主题等。这样,用户在使用系统时就可进行选择,以满足自已的需求。

但对于普通用户来说,在这些程序间进行选择配置会较困难。update-alternatives工具就是为了解决这个问题,帮助用户能方便地选择自已喜欢程序和配置系统功能。

最明显的场景,比如同时安装了OpenJDK和JDK,那么在命令行上使用java时就可以通过这个命令来进行切换。

二、位置

/usr/bin/update-alternatives

三、格式用法

update-alternatives [<选项> ...] <命令>

四、主要参数

Commands:
--install <link> <name> <path> <priority>
[--slave <link> <name> <path>] ...
在系统中加入一组替换项.
--remove <name> <path> 从 <名称> 替换组中去除 <路径> 项.
--remove-all <name> 从替换系统中删除 <名称> 替换组.
--auto <name> 将 <名称> 的主链接切换到自动模式.
--display <name> 显示关于 <名称> 替换组的信息.
--query <name> machine parseable version of --display <name>.
--list <name> 列出 <名称> 替换组中所有的可用替换项.
--get-selections list master alternative names and their status.
--set-selections read alternative status from standard input.
--config <name> 列出 <名称> 替换组中的可选项,并就使用其中哪一个,征询用户的意见.
--set <name> <path> 将 <路径> 设置为 <名称> 的替换项.
--all 对所有可选项一一调用 --config 命令. <link> 是指向 /etc/alternatives/<名称> 的符号链接>. (e.g. /usr/bin/pager)
<name> 是该链接替换组的主控名. (e.g. pager)
<path> 是替换项目标文件的位置. (e.g. /usr/bin/less)
<priority> 是一个整数,在自动模式下,这个数字越高的选项,其优先级也就越高. Options:
--altdir <directory> 指定不同的可选项目录.
--admindir <directory> 指定不同的管理目录.
--log <file> 设置log文件.
--force allow replacing files with alternative links.
--skip-auto skip prompt for alternatives correctly configured
in automatic mode (relevant for --config only)
--verbose 详尽的操作进行信息,更多的输出.
--quiet 安静模式,输出尽可能少的信息.
--help 显示本帮助信息.
--version 显示版本信息.

五、应用实例

1、列出可用的候选命令

update-alternatives --list java

2、显示和修改实际指向的候选命令,

sudo update-alternatives --config java

3、配置系统上所有的候选命令

sudo update-alternatives --all

4、显示一个命令链接的所有可选命令

update-alternatives --display editor

5、将 <名称> 的主链接切换到自动模式

sudo update-alternatives --auto editor

6、在系统中加入一组替换项

sudo update-alternatives --install x-cursor-theme x-cursor-theme /etc/X11/cursors/Gold.theme 70

参考:

http://www.lampblog.net/ubuntu/update-alternatives%E5%91%BD%E4%BB%A4/(以上内容转自此篇文章)

http://jingyan.baidu.com/article/ff42efa92a64c9c19e2202d2.html(配置Java的切换)

http://coolnull.com/3339.html

http://www.jb51.net/article/112372.htm

http://www.cnblogs.com/caidi/p/6009217.html

http://www.mamicode.com/info-detail-1144825.html

http://blog.csdn.net/zm_21/article/details/9495249

Linux中dpkg工具update-alternatives实现符号链接软件版本的切换(转)的更多相关文章

  1. [转帖]Linux中awk工具的使用

    Linux中awk工具的使用 2018年10月09日 17:26:20 谢公子 阅读数 2170更多 分类专栏: linux系统安全   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权 ...

  2. linux中awk工具的使用(转)

    add by zhj: awk很强大,它是一个简单的编程语言,国外有本专门的书介绍它的用法.<effective awk programming>,它支持整型,字符串型,数组,变量在使用前 ...

  3. Linux 笔记 - 第十三章 Linux 系统日常管理之(四)Linux 中 rsync 工具和网络配置

    博客地址:http://www.moonxy.com 一.前言 rsync 命令是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件,可以理解为 remote sync(远程同步) ...

  4. linux中的工具

    远程连接linux的工具: 命令行: SecureCRT   putty  XShell(商业环境付费) 图形界面:WinSCP SecureFX 远程连接window服务器工具: FileZilla ...

  5. linux中grep工具

    正则表达式 以前我们用grep在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义.其实grep还可以找出符合某个模式(Pattern)的一类字符串.例如找出所有符合xxxxx@xxxx. ...

  6. Kali Linux中下载工具Axel的安装和使用

    前言: Axel是一个多线程的HTTP/FTP下载工具,支持断点续传. Axel的安装 apt-get install axel Axel的卸载 apt remove axel 安装完成之后输入 ax ...

  7. linux中awk工具的使用(转载)

    awk是一个非常好用的数据处理工具.相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,awk处理方式如下: $ awk '条件类型1{动作1} 条件类型2{动作2} ...' ...

  8. linux中awk工具的使用

    awk是一个非常好用的数据处理工具.相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,awk处理方式如下: $ awk '条件类型1{动作1} 条件类型2{动作2} ...' ...

  9. linux中find工具

    find 由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下.即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只要你具有相应的权限. ...

随机推荐

  1. P1821 [USACO07FEB]银牛派对Silver Cow Party

    题目描述 One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to attend the b ...

  2. python 连接操作mysql数据库

    开发数据库程序流程: 1.创建connection对象,获取cursor 2.使用cursor执行SQL 3.使用cursor获取数据.判断执行状态 4.提交事务 或者 回滚事务 import: 数据 ...

  3. Docker一键部署Hadoop心得(一)

    最近一直在折腾使用docker一键部署全分布式hadoop集群,虽然一键部署的脚本写好了并且可以成功运行出各个节点,但在运行一个wordcount实例时出现了错误,错误如下: java.io.IOEx ...

  4. HO引擎近况20190110

    前两天更新完,挺兴奋 趁着兴奋把虚拟机里面的MACOSX从10.12.6升级到了10.14 然后装XCODE,虽然比较熟悉了,但是架不住慢啊 先下载了一个DMG的镜像文件,用不了,转成ISO也不行 然 ...

  5. python之Django实现商城从0到1

    dailyfresh-B2Cdailyfresh mall based on B2C model 基于B2C的天天生鲜商城 项目托管地址:https://github.com/Ylisen/daily ...

  6. 解决 配置springmvc拦截所有请求后请求静态资源404的问题

    <servlet-mapping> <servlet-name>spring-servlet</servlet-name> <url-pattern>/ ...

  7. ECMAScript6——Set数据结构

    /** * 数据结构 Set */ // ----------------------------------------------------- /** * 集合的基本概念:集合是由一组无序且唯一 ...

  8. PowerBI开发 第十一篇:报表设计技巧(更新)

    PowerBI版本在持续的更新,这使得报表设计能够实现更多新的功能,您可以访问 PowerBI Blog查看PowerBI的最新更新信息,本文总结了PowerBI新版本的重要更新和设计技巧. 我的Po ...

  9. Maven构建项目速度太慢的解决办法

    问题描述 通过idea新建maven项目,参数设置好后,idea自动构建maven项目时,速度很慢. 参数设置如图: 执行时间如下图: Total time为8:49,花了将近十分钟时间. 连续尝试了 ...

  10. 记录:测试本机下使用 GPU 训练时不会导致内存溢出的最大参数数目

    本机使用的 GPU 是 GeForce 840M,2G 显存,本机内存 8G. 试验时,使用 vgg 网络,调整 vgg 网络中的参数,使得使用对应的 batch_size 时不会提示内存溢出.使用的 ...