|
|
--
--
http://www.linuxsir.cn/bbs/showthread.php?t=172026
[ ' RH7.3最终汉化实例与RedHat软件设置 ' 中第 27 帖 ]
--
--
########### 制作中文man ############
1. 构思: 收集linux命令编辑成unix文件格式. 若在windowns下编辑的, 用dos2unix命令转换, 这里文件名为 man-shell . 然后用 awk 范围模板进行查询 .
假如:
$ head -18 $HOME/wman/man-shell
name bye
功能说明:中断FTP连线并结束程序。
语 法:bye
补充说明:在ftp模式下,输入bye即可中断目前的连线作业,并结束ftp的执行。
----------------------------------------------
name ftp
(file transfer protocol)
功能说明:设置文件系统相关功能。
语 法:ftp [-dignv][主机名称或IP地址]
补充说明:FTP是ARPANet的标准文件传输协议,该网络就是现今Internet的前身。
参 数:
-d 详细显示指令执行过程,便于排错或分析程序执行的情形。
-i 关闭互动模式,不询问任何问题。
-g 关闭本地主机文件名称支持特殊字符的扩充特性。
-n 不使用自动登陆。
-v 显示指令执行过程。
----------------------------------------------------------
要显示 ftp 文档:
$ awk '/^name ftp$/,/---------/' $HOME/wman/man-shell
2. 实例:
若无bin目录的, 创建一个:
$ [ -d $HOME/bin ] || mkdir $HOME/bin
$ cd
$ pwd
$ mkdir wman
把编辑好的man文件集复制到 $HOME/wman 目录下
$ cp man-shell ./wman/
进入 bin 目录 编写脚本:
$ cd $HOME/bin
$ vi wman
---------------------------------------
#!/bin/bash
# 很多时, 都是查询同一个命令, 做暂存文件可方便查询
# redhat 对/tmp 目录下文件定时清除
if [ -f /tmp/$1.mantmp ]
then
more /tmp/$1.mantmp
exit
fi
if grep "^name $1\$" $HOME/wman/man-shell &> /dev/null
then
:
else
echo "没有 $1 命令 "
fi
# more 浏览长文档时, 开头两行有时看不到
echo "############# $1 中文man ##############" > /tmp/$1.mantmp
echo "" >> /tmp/$1.mantmp
# 制作传递变量的文件
echo "/^name $1\$/,/----------/" > /tmp/man.tmp
# 进行查询
awk -f /tmp/man.tmp $HOME/wman/man-shell >> /tmp/$1.mantmp
echo "############# $1 中文man ##############" >> /tmp/$1.mantmp
# 显示文档
more /tmp/$1.mantmp
-------------------------------------------
$ chmod +x wman
$ cd
尝试:
$ wman ftp |
|