man 命令

man

1.作用

man命令用来提供在线帮助,使用权限是所有用户。在Linux系统中存储着一部联机使用的手册,以供用户在终端上查找。使用man命令可以调阅其中的帮助信息,非常方便和实用。

2.格式
man 命令名称
man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] [-M path] [-P pager] [-S section_list] [section] name ...

3.参数
-C config_file:指定设定文件man.conf,缺省值是/etc/man.conf。
-M path:指定了联机手册的搜寻路径, 如果没有指定则使用环境变数MANPATH的设定;如果没有使用MANPATH, 则会使用/usr/lib/man.conf内的设定;如果MANPATH是空字串,则表示使用缺省值。
-P pager:指定使用何种pager.man会优先使用此选项设定,然后是依环境变数MANPAGER设定,然后是环境变数PAGER;man缺省使用/usr/bin/less -is。
-S section_list man:所搜寻的章节列表(以冒号分隔),此选项会覆盖环境变数MANSECT的设定。
-a man:缺省情况是在显示第一个找到的手册之后,就会停止搜寻,使用此选项会强迫man继续显示所有符合name的联机手册。
-c:即使有最新的cat page,也继续对联机手册重新作排版,本选项在屏幕的行列数改变时或已排版的联机手册损坏时特别有意义。
-d:不要真的显示联机手册,只显示除错讯息。
-D:同时显示联机手册与除错讯息。
-h:显示求助讯息然后结束程式 。
-K:对所有的联机手册搜寻所指定的字串。请注意,本功能回应速度可能很慢,如果指定section(区域)会对速度有帮助。
-m system:依所指定的system名称而指定另一组的联机手册。
man:是manual(手册)的缩写。在输入命令有困难时,可以立刻得到这个文档。例如, 如果使用ps命令时遇到困难,可以输入man ps得到帮助信息,此时会显示出ps的手册页(man page)。

由于手册页man page是用less程序来看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的所有选项。

less中比较重要的功能键有:
[q] 退出;
[Enter] 一行行地下翻;
[Space] 一页页地下翻;
上翻一页;
[/] 后跟一个字符串和[Enter]来查找字符串;
[n] 发现上一次查找的下一个匹配。

4.阅读手册页
手册页在很少的空间里提供了很多的信息, 这里简单介绍一下大多数手册页中都有的部分内容。Linux手册页主要有九个部分:用户指令、系统调用、程序库、设备说明、文件格式、游戏、杂项、系统指令、内核,手册页快照见图1所示。

图1 ps命令手册页快照

Linux手册页布局见表1。

5.应用实例
Linux 命令中有一些基础的、重要的命令,例如ps、find、cat和ls等。下面来举一个综合应用的例子,由此可以看出man的地位在Linux中可谓至关重要。但是,man所显示的信息却不是普通的文本,如果直接将这些文字重定向到一个文本文件,就会发现在man中高亮显示的文字就变成了两个,而且有不计其数的制表符,使打印、编辑都变得非常不便。不过,使用下面这样一条语句就能得到ps命令打印。
# man ps | col -b | lpr

这条命令同时运用了输出重定向和管道两种技巧,作用是将ps命令的帮助信息可以直接打印出来。更多的Man文件可以查看Linux Man

unencode

1.作用
unencode命令可以把一个二进制文件表编码为一个文本文件,使用权限是所有用户。

2.格式
uuencode [-hv] [源文件] 目标文件

3.主要参数
-h:列出指令使用格式(help) 。
-v:列出版本信息。

4.应用说明
uuencode指令可以将二进制文件转化成可使用电子邮件发送的ASCII编码形式。uuencode编码后的资料都以 begin开始,以end作为结束,且通常其中的每一行的开始均为“M”,中间部分是编码过的文件,编码后的文件比源文件要大一些。

uudecode

1.作用
uudecode命令用来将uuencode编码后的档案还原,uudecode只会将begin与end标记之间的编码资料还原,程序会跳过标记以外的资料。它的使用权限为所有用户。

2.格式
uuencode [-hv] [file1 ...]

3.主要参数
-h:列出指令使用格式(help)。
-v:列出版本信息。

4.应用实例
使用下面命令一次还原几个文件:
uuencode file1.uud file2.uud file3.uud

动手练习

1.在Linux命令行下发送邮件
虽然Linux桌面应用发展很快,但是命令行(Shell)在Linux中依然有很强的生命力。如果能确认电子邮件服务器支持8bit的字节,就可以直接使用下面命令:
cat <附件文件名> | mail <邮件地址>

cat(cat是concatenate的缩写)命令是将几个文件处理成一个文件,并将这种处理的结果保存到一个单独的输出文件,这里我们用它来合并邮件的文本。

写好邮件名称,比如叫cjkmail,然后使用下面命令:
$uuencode <附件文件名> <附件文件名> >>cjkmail

这样就可以用vi编辑器写cjkmail文件,并在前面写上信的正文,然后寄出。

对方收到信后,把信中属于cjkmail中的内容拷贝出来,存为themail.uue。如果对方是在Windows下,就可以用WinRAR或WinZip解压,这样就可以看到附件。

如果对方也使用Linux,可以用undecode命令还原:
$ uudencode -o<附件文件名> themail.uue

2.实现tar的分卷
笔者想把一个378MB的文件压缩成多个63MB的文件(笔者的USB为64MB),使用下面命令:
$tar czvf - dir | split -d -b 63m

然后合并命令:
$cat x* > dir.tgz

以上例子实际是由三个命令组合完成的,即用tar打包,用split分割,用cat合并。“tar czvf - dir”的意思是把dir目录打包,并输出到标准输出(argv),这样就可以直接用管道输出给split。

3.连续执行一个命令
使用watch命令,可以反复执行命令。如果和ls配合,可以达到观察某文件大小变化的效果。
$watch ls -l file.name

4.用tar命令导出一个文件
有一个tar格式的DVD文件GLvPro6.4_linux.tar,因为该文件非常大(4.7GB),如果全部解压比较麻烦,可以用下面命令先导出readme.txt看看。
tar xvf GLvPro6.4_linux.tar readme.txt

这样readme.txt就单独被导出了。

5.用tar打包一个目录时只备份其中的几个子目录
tar cf --exclude home/cjh home/cao

这样home目录下只有cjh和cao两个子目录备份。

到此为止,Linux必学的60个命令已经全部介绍完了。Linux的命令行方式功能强大,如果熟练掌握了Linux的常用命令,往往只需要通过各种技巧就可以组合构成一条复杂的命令,从而完成用户任务。Linux系统中的命令实在是太多了,不可能像在MS DOS中把所有的命令及参数都记住。Linux系统提供了一些方法,比如可以通过“help”和“man”来查询名令
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值