-
名称 expr
使用权限 所有使用者
### 字串长度
shell>> expr length "this is a test"
14
### 数字商数
shell>> expr 14 % 9
5
### 从位置处抓取字串
shell>> expr substr "this is a test" 3 5
is is### 数字串 only the first character
shell>> expr index "testforthegame" e
2
### 字串真实重现
shell>> expr quote thisisatestformela
thisisatestformela名称: tr
### 1.比方说要把目录下所有的大写档名换为小写档名?似乎有很多方式 "tr"是其中一种:
#!/bin/sh
dir="/tmp/testdir";
files=`find $dir -type f`;
for i in $files
do
dir_name=`dirname $i`;
ori_filename=`basename $i`
new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;
#echo $new_filename;
mv $dir_name/$ori_filename $dir_name/$new_filename
done
### 2.自己试验中...lowercase to uppercase
tr abcdef...[del] ABCDE...[del]
tr a-z A-Z
tr [:lower:] [:upper:]
shell>> echo "this is a test" | tr a-z A-Z > www
shell>> cat www
THIS IS A TEST
### 3.去掉不想要的字串shell>> tr -d this ### 去掉有关 t.e.s.t
this
man
man
test
e
### 4.取代字串
shell>> tr -s "this" "TEST"
this
TEST
th
TE指令 clear
用途 xx萤幕用使用方法 在 console 上输入 clear
名称: reset, tset
使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]使用说明:
reset 其实和 tset 是一同个命令 它的用途是设定终端机的状态 一般而言 这个命令会
自动的从环境变数 命令列或是其它的组态档决定目前终端机的型态 如果指定型态是 ?
的话 这个程式会要求使用者输入终端机的型别由于这个程式会将终端机设回原始的状态 除了在 login 时使用外 当系统终端机因为程
式不正常执行而进入一些奇怪的状态时 你也可以用它来重设终端机 o 例如不小心把二进
位档用 cat 指令进到终端机 常会有终端机不再回应键盘输入 或是回应一些奇怪字元的
问题 此时就可以用 reset 将终端机回复至原始状态 选项说明:
-p将终端机类别显示在萤幕上 但不做设定的动作 这个命令可以用来取得目前终端机的类别
-e ch
将 erase 字元设成 ch
-i ch将中断字元设成 ch
-k ch将删除一行的字元设成 ch
-I不要做设定的动作 如果没有使用选项 -Q 的话 erase 中断及删除字元的目前值依然会
送到萤幕上
-Q不要显示 erase 中断及删除字元的值到萤幕上
-r将终端机类别印在萤幕上
-s将设定 TERM 用的命令用字串的型式送到终端机中 通常在 .login 或 .profile 中用
范例:
让使用者输入一个终端机型别并将终端机设到该型别的预设状态
# reset ?将 erase 字元设定 control-h
# reset -e ^B将设定用的字串显示在萤幕上
# reset -s
Erase is control-B (^B).
Kill is control-U (^U).
Interrupt is control-C (^C).
TERM=xterm;名称 compress
使用权限 所有使用者
使用方式 compress [-dfvcV] [-b maxbits] [file ...]
说明
compress 是一个相当古老的 unix 档案压缩指令 压缩后的档案会加上一个 .Z 延伸档名
以区别未压缩的档案 压缩后的档案可以以 uncompress 解压 若要将数个档案压成一个压缩档 必须先将档案 tar 起来再压缩 由于 gzip 可以产生更理想的压缩比例 一般人多
已改用 gzip 为档案压缩工具参数
c 输出结果至标准输出设备 一般指荧幕
f 强迫写入档案 若目的档已经存在 则会被覆盖 (force)
v 将程式执行的讯息印在荧幕上 (verbose)
b 设定共同字串数的上限 以位元计算 可以设定的值为 9 至 16 bits 由于值越大 能
使用的共同字串就 越多 压缩比例就越大 所以一般使用预设值 16 bits (bits)
d 将压缩档解压缩
V 列出版本讯息范例
将 source.dat 压缩成 source.dat.Z 若 source.dat.Z 已经存在 内容则会被压缩档覆盖
compress -f source.dat
将 source.dat 压缩成 source.dat.Z 并列印出压缩比例
-v 与 -f 可以一起使用
compress -vf source.dat将压缩后的资料输出后再导入 target.dat.Z 可以改变压缩档名
compress -c source.dat > target.dat.Z
-b 的值越大 压缩比例就越大 范围是 9-16 预设值是 16compress -b 12 source.dat
将 source.dat.Z 解压成 source.dat 若档案已经存在 使用者按 y 以确定覆盖档案 若
使用 -df 程式则会自动覆盖档案 由于系统会自动加入 .Z 为延伸档名 所以 source.dat
会自动当作 source.dat.Z 处理
compress -d source.dat
compress -d source.dat.Z