linux下,命令非常多,你想知道你系统下有多少命令可以用吗?
[root@lmode ~]#[tab] <=在这里不要输入任何字符,直接按一次[tab]按键
Display all 1092 possibilities? (y or n)<=按y显示所有命令来,按n离开
linux下,许多命令的开发者,为了让使用者可以更快的了解命令的用法,制作了命令在线帮助文件。可以通过man这个命令来查看某个命令的具体用法,man是manual(操作说明/手册)的简写。比如你想了解ls这个命令:
[root@lmode ~]# man ls
命令执行后进入ls命令的man page页,命令在线帮助文件:
LS(1) User Commands LS(1)
NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default).
Sort entries alpha-betically if none of -cftuvSUX nor --sort.
Mandatory arguments to long options are mandatory for short options too.
-a, --all
do not ignore entries starting with .
-A, --almost-all
do not list implied . and ..
--author
with -l, print the author of each file
....省略
进入man命令的功能后,你可以按下『空格键』往下翻页,可以按下『 q 』按键来离开man的环境。
上面命令介绍说明的第一行LS(1),LS是命令的名称,那么(1)的含义是:一般用户可使用的命令。命令后面的数字是有特别含义的,常见的数字及含义如下:
1 使用者在shell环境中可以操作的命令或可运行文件
2 系统核心可呼叫的函数与工具等
3 一些常用的函数(function)与函式库(library),大部分为C的函式库(libc)
4 装置文件的说明,通常在/dev下的文件
5 配置文件或者是某些文件的格式
6 游戏(games)
7 惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明
8 系统管理员可用的管理命令 如shutdown命令
9 跟kernel有关的文件
常用的是1,5,8。这三个数字及含义可以记下来。
man page的内容根据不同命令,可以整理出下面几个部分:
NAME 命令、数据名称说明
SYNOPSI 命令的语法(syntax)说明
DESCRIPTION 较为完整的说明,这部分最好仔细看看!
OPTIONS 针对 SYNOPSIS 部分中,有列举的所有可用的选项说明
COMMANDS 当这个程序(软件)在运行的时候,可以在此程序(软件)中下达的命令
FILES 这个程序或数据所使用或参考或连结到的某些文件
SEE ALSO 可以参考的,跟这个命令或数据有相关的其他说明!
EXAMPLE 一些可以参考的范例
BUGS 存在的一些问题
man下的一些参数详解:
空格键 向下翻一页
[Page Down] 向下翻一页
[Page Up] 向上翻一页
/string 向『下』搜寻 string 这个字符串,如果要搜寻date 的话,就输入 /date 。
?string 向『上』搜寻 string 这个字符串。
n, N 利用 / 或 ? 来搜寻字符串时,可以用 n 来继续下一个搜寻 (不论是 / 或 ?) ,可以利用 N 来进行『反向』搜寻。举例来说,我以 /date 搜寻 date 字符串, 那么可以 n 继续往下查询,用 N 往上查询。若以 ?date 向上查询 date 字符串, 那我可以用 n 继续『向上』查询,用 N 反向查询。
q 结束这次的 man page
这些man page的数据放在哪里呢?不同的distribution通常可能有点差异性,
不过,通常是放在/usr/share/man这个目录里头,然而,我们可以透过修改他的man page搜寻路径来改善这个目录的问题! 修改/etc/man.config (有的版本为man.conf或manpath.conf)即可。
关于man的信息你可以使用『 man man 』来查询。
在某些情况下,你可能知道要使用某些特定的命令或者是修改某些特定的配置文件,但是偏偏忘记了该命令的完整名称。 有些时候则是你只记得该命令的部分关键词。
[root@lmode~]# man -f man
man (1) - format and display the on-line manual pages
man [manpath] (1) - format and display the on-line manual pages
man.config [man] (5) - configuration data for man
当使用『man -f 命令』时,man只会找数据中的左边那个命令(或文件)的完整名称,有一点不同都不行! 但如果我想要找的是『关键词』呢?
[root@lmode ~]$ man -k man
用关键词将说明文件里面只要含有man那个字眼的(不见得是完整字符串) 就将他取出来!
事实上,还有两个命令与man page有关呢!而这两个命令是man的简略写法说~就是这两个:
[root@lmode ~]$ whatis [命令或者是数据] <==相当于 man -f [命令或者是数据]
[root@lmode ~]$ apropos [命令或者是数据] <==相当于 man -k [命令或者是数据]
而要注意的是,这两个特殊命令要能使用,必须要有创建 whatis 数据库才行!这个数据库的创建需要以 root 的身份下达如下的命令:
[root@lmode ~]# makewhatis
--------------------------------------
如何在 Linux 中使用 Whatis 命令
它与“man”非常相似,除了这个命令只打印给定命令的一行描述。无需其他详细信息即可轻松了解命令的用途。
命令的一般语法whatis:
whatis [OPTIONS...] [COMMAND]
显示有关(多个)命令的信息:
whatis [command] [command]
该whatis命令可用于提供多个 Linux 命令的简短手册页描述。为此,只需指定几个命令。
示例:打印关于ls和mkdir命令的简要信息
显示信息多个命令
关闭输出微调:
whatis -l [command]
要在不进行任何修整的情况下显示输出,请运行带选项的 whatis 命令-l。
示例:让我们使用whatis带有和不带此选项的命令来查看区别。
关闭输出微调
显示调试信息:
whatis -d [command]
要在终端中显示有关 Linux 命令的调试信息,请使用whatis带有-d选项的命令。
示例:显示有关cp命令的调试信息
按正则表达式搜索:
whatis -r [command]
该-r选项按关键字名称搜索命令。如果任何名称与页面名称的任何部分匹配,它就会输出该匹配项。
示例:让我们打印与模式匹配的命令的简短描述cd。
按模式搜索命令:
whatis -w [command* or *command]
使用该-w选项使用通配符搜索 Linux 命令。指定一个模式以搜索与该模式匹配的命令。
示例:让我们查找以命令模式开头的命令cd。
使用其他操作系统的手册页:
whatis -m [system] [command]
该-m选项提供对其他系统的手册页名称的访问。
示例:让我们搜索cat来自NewOne系统的命令,并获得该命令的简要说明。
设置手册页的搜索路径:
whatis -M [system] [command]
要为手册页设置替代搜索路径,请使用该-M选项。默认情况下,whatis使用$MANPATH环境变量。
示例:指定手册页的默认搜索路径–manpath=/lib并在那里搜索mkdir命令。
No comments:
Post a Comment