Questions tagged «version»

处于特定状态的特定软件的修订号。



7
如何安全获取ksh的版本?
如何从ksh脚本中安全地获取ksh的版本? 我已经看到以下解决方案: ksh --version echo ${.sh.version} echo $KSH_VERSION 在适当的情况下,所有这些方法都可以正常工作。但是,我关心的是不完美的情况。 具体来说,我使用的几台机器具有较旧的ksh版本,出于我的目的,这些版本严重缺乏功能。无论如何,我要(以编程方式)检查版本的原因是要查看ksh版本是否为功能较弱的版本之一。如果是这样,我想用不太出色的代码执行分支。 但是,在有问题的机器上,shell的能力不足导致无法检查版本... 如果我尝试ksh --version,它什么也不打印,并打开一个新实例ksh! 如果尝试echo ${.sh.version},ksh将其视为语法错误,不能使用丢弃2> /dev/null。 $ echo ${.sh.version} 2> /dev/null ksh: ${.sh.version}: bad substitution 当然echo $KSH_VERSION看起来可以正常工作-我的意思是它不会崩溃-尽管在这些机器上它是空白的。另外,我看到的地方是KSH_VERSION只被设定pdksh。 问题: 如何安全地以ksh编程方式检查版本?就我的目的而言,我并不在乎实际的版本号是多少,而只是它是否是的过时版本ksh。 是否$KSH_VERSION足够好?我的意思是,如果空白,那么ksh一定是过时的版本吗?该其他论坛是否正确,即使对于较新版本的,也可能未设置ksh? 根本没有办法检查吗?

2
哪个sed版本不是GNU sed 4.0?
我试图找出sed在BusyBox 1.18.3上安装的哪个版本。该--version输出是神秘的。 $ sed --version This is not GNU sed version 4.0 以下代码来自相关代码sed.c。 /* Lie to autoconf when it starts asking stupid questions. */ if (argv[1] && !strcmp(argv[1], "--version")) { puts("This is not GNU sed version 4.0"); return 0; } 这是标题: /* * sed.c - very minimalist version of sed …
12 sed  version  busybox 

1
Arch Linux pacman指定软件包版本
我知道我可以pacman按照手册中的说明定义所需的软件包版本pacman -S "bash>=3.2"。但是我怎么知道可用的版本呢? 我也知道pacman在同步.db文件中的时正在创建镜像的副本/var/lib/pacman/sync/,但是这些文件不是人类可读的。 如果我想安装一些版本什么virtualbox例如,我希望在镜子的地方,这将不需要的新版本linux(如设定IgnorePkg在pacman.conf比我已经安装了(因为)nvidia驱动程序)?我怎么知道它是什么版本,是否可用?

2
为什么不能安装共享库的多个版本?
在某些情况下,某个程序将依赖于库版本xy,而另一个依赖于库版本xz,但据我所知,没有软件包管理器允许我同时安装xy和xz有时它们将同时允许两个主要版本(例如qt4和qt5,它们可以同时安装),但(似乎)绝不是次要版本。 为什么是这样?例如,阻止它的限制因素是什么?我认为一定有充分的理由不允许这种看似有用的功能。例如,在加载共享库时,没有字段指示要加载哪个版本,因此Linux无法知道如何决定加载哪个版本?还是真的没有理由吗?像所有次要版本一样,还是应该兼容的?

4
如何以编程方式确定安装的最高版本的内核RPM?
我要编写的脚本大致如下: if [ uname -r is not == highest version of kernel RPM installed ] then echo "You need to reboot to use the latest kernel" fi 问题是,如果的输出rpm -q kernel类似于: kernel-2.6.32-358.10.2.el6.x86_64 kernel-2.6.32-358.6.1.el6.x86_64 …我如何确定哪个更高?我知道简单的字符串排序是不可靠的(在此示例中将是反向的)。rpm是否有快捷方式,还是我必须解析所有内容并自己比较?
9 rpm  version 


5
如何在Gentoo中安装同一软件包的多个版本?
我想在我的Gentoo系统上安装相同软件包的两个(或更多)版本。我知道肯定不会有任何文件冲突,因为安装的文件很少,并且每个文件都以版本命名。 我知道插槽,但是这些插槽是在ebuild文件中指定的,并且假设由于某些原因,我不想编辑任何ebuild文件。 我希望已安装的版本成为world软件包的一部分,因此可以照常重新安装或卸载它们。 有没有办法安装同一软件包的多个版本?您知道实现该目标的一些Portage技巧吗?

4
Skype版本欺骗?
微软显然已经决定终止旧版本的Skype服务(在当前的4.3.0.37之前)。太糟糕了,因为我急需Skype才能正常工作。由于我使用的是旧的Mandriva发行版(1),因此最后一个适用于我的版本是2.2.0.25(2)。我喜欢这个系统,因为它运行平稳,不想仅仅为了skype对其进行更改。也不想安装vmware机器。因此,从昨天开始,当我尝试登录时收到一条错误消息:server connection failed。奇怪的是,我短暂地skype以root身份运行,然后我可以再次登录,但是不再登录了。然后,我尝试创建另一个用户并skype从中运行。没运气。我怀疑服务器会读出我正在运行的Skype客户端的版本,然后拒绝连接。 还是这里的机制是什么,我们可以以某种方式规避它吗?我立即想到,一个人可能会欺骗4.3.0.37版本,使服务器认为我正在运行此客户端,因此让我连接。有谁知道如何具体实现这一目标?还有其他想法吗? Linux version 2.6.31.13-desktop-1mnb (qateam@titan.mandriva.com) (gcc version 4.4.1 (GCC) ) #1 SMP Tue Apr 27 20:37:44 EDT 2010 skype-2.2.0.25-69.1mib2010.2.i686.rpm PS:我需要Skype功能,不需要其他替代服务。我需要交谈的人只有Skype,没有能力,也不想使用其他服务。 PPS:我现在要做的是构建我的旧台式机,这是一台具有386 mb sd ram的duron 1 ghz机器。在Windows XP + SP3上安装了Win XP。安装了无法正常工作的Skype。然后提供了用于“旧PC”的另一种Skype版本。安装后,现在我可以成功拨打电话了。不过,这不是我的首选解决方案。

1
多个安装的git版本-centos
我在一两年前手动安装了git 1.6。今天我注意到yum中提供了1.7版本,并安装了它(软件包git-all),我现在得到以下输出: [root@ovz5197 ~]# git --version bash: /usr/local/bin/git: No such file or directory [root@ovz5197 ~]# which git /usr/bin/git [root@ovz5197 ~]# /usr/bin/git --version git version 1.7.4.1 [root@ovz5197 ~]# 知道为什么输出which似乎与上面的第一行矛盾吗?
8 centos  git  version 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.