安装 Sh-utils-2.0

估计编译时间:		0.42 SBU
估计所需硬盘空间:     12 MB

安装 Sh-utils

你必须先打 host-name-patch 这个补丁,才能安装这个包。确认在运行下面的命令前,补丁已经解压了。

安装命令如下:

patch -Np1 -i ../sh-utils-2.0-hostname.patch &&
./configure --prefix=/usr &&
make &&
make install &&
mv /usr/bin/{basename,date,echo,false,pwd} /bin &&
mv /usr/bin/{sleep,stty,su,test,true,uname} /bin &&
mv /usr/bin/chroot /usr/sbin

FHS 兼容性说明

这个包里有一个叫test的程序。这个程序经常用在shell脚本中计算表达式的值,通常用 [ condition ] 的形式来执行。这些括号是编译到bash命令解释中的,但是 FHS 规定应该有一个 [ 的二进制文件。我们用下面的命令来创建它:

ln -s test /bin/[

命令解释

patch -Np1 -i ../sh-utils-2.0-hostname.patch: 这个补丁使 hostname 程序不编译,我们后面安装的 net-tools 包会安装上另一个 hostname 程序,比这里的好(因为它支持一些其它程序如 XFree86 要调用的参数)。

Sh-utils的内容

最后检查于 version 2.0.

包含的程序

basename, chroot, date, dirname, echo, env, expr, factor, false, groups, hostid, id, logname, nice, nohup, pathchk, pinky, printenv, printf, pwd, seq, sleep, stty, su, tee, test, true, tty, uname, uptime, users, who, whoami 和 yes

具体说明

basename

去掉文件名中的目录和后缀。

chroot

使用特定的目录作为执行某个命令或者交互shell的root目录。

date

以特定的格式显示当前时间,或者设置系统日期。

dirname

显示从文件名去掉不是目录的后缀后的内容。

echo

显示一行文本。

env

在一个被修改的环境运行一个程序。

expr

执行简单的整数计算。

factor

输出所有指定整数的质因数。

false

返回一个不成功或者逻辑假的结果。

groups

显示一个用户所在的组。

hostid

以16进制方式,显示当前主机的数字标志符

id

显示某个用户或者当前用户的真实和有效UID、GID。

logname

显示当前用户的登录名。

nice

修改某个进程的调度优先级。

nohup

使某个命令不被挂起。

pathchk

检查文件名是否是有效的或者是可移动的。

pinky

一个轻量级的finger工具,用来得到某个用户的信息。

printenv

显示所有的环境变量。

printf

格式化输出数据。

pwd

显示当前工作目录。

seq

以指定的步长输出一个数列。

sleep

延迟一段时间。

stty

改变和显示终端行的设置。

su

改变用户的身份运行一个shell。

tee

从标准输入读取数据,输出到标准输出和文件。

test

检查文件类型,以及进行变量的比较。

true

返回一个成功或者逻辑真的结果。

tty

t显示标准输出设备连接终端的文件名。

uname

打印系统信息。

uptime

显示系统已经运行的时间。

users

显示在当前主机登录的用户名。

who

显示哪些用户登录。

whoami

打印用户有效的用户标志符。

yes

重复输出一个'y'字符串,直到被杀死。

安装Sh-utils依赖于

最后检查于 version 2.0.

Autoconf: autoconf, autoheader
Automake: aclocal, automake
Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, chown, install, ls, mv, rm
Gettext: msgfmt, xgettext
Gcc: cc, cc1, collect2, cpp0, gcc
Glibc: getconf
Grep: egrep, fgrep, grep
M4: m4
Make: make
Gawk: gawk
Perl: perl
Sed: sed
Sh-utils: basename, echo, expr, hostname, sleep, uname
Tar: tar
Texinfo: install-info, makeinfo
Textutils: cat, tr