linux基础之帮助文档---常用的命令[转载]

时间:2021-05-22 17:43:08

linux基础之帮助文档查看-2014.2.11

---常用命令

第一个man:相关命令whatis

1,man手册查找格式

-输入 ? 键,向前查找,如 ?-h ,将会搜索含有“-h”的行

-输入 / 键,向后查找,如 /-k ,将会向后搜索“-k”的行

按 N或者n(下一个)来进行上一个下一个相关匹配项查看。

2,man手册存放的位置

可以通过manpath命令来查看manpage的位置

3,man手册页入口

1 用户指令   2 系统       3 程序库   4 设备   5 文件系统

6 游戏       7 杂项       8 系统指令       9 内核指令

一般用到的项为:1,5,8

4,一般用man查看一个命令的帮助文档的时候,可以通过whatis查看一下该命令在man帮助文档中的入口,一条命令可能有多个man手册页入口(注:在使用whatis的时候如果linux计算机开机70分钟,那么你可以自己随意使用了,如果linux计算机刚刚启动,那么需要执行makewhatis命令来编译一下,否则无法使用whatis命令)

 

[root@localhost ~]# whatis rm

rm                   (1p)  - remove directory entries

rm                   (1)  - remove files or directories

[root@localhost ~]# whatis passwd

passwd               (1)  - update user's authentication tokens

passwd               (5)  - password file

passwd              (rpm) - The passwd utility for setting/changing passwords using PAM

passwd [sslpasswd]   (1ssl)  - compute password hashes

在用man查询rm或者passwd的命令的时候,可以输入:

man 5 passwd        //在入口为文件系统去查询passwd的帮助文档

man 1 passwd        //在入口为用户指令去查询passwd的帮助文档

man 1/1p rm        



 

 

 

第二个:help: 相关命令type,which

1,首先解释一下内部命令和外部命令

简单来说,在linux系统中有存储位置的命令为外部命令;

没有存储位置的为内部命令,可以理解为内部命令嵌入在linux的shell中,所以看不到。

2,外部命令的帮助文档使用help的格式为:命令  --help

如:passwd  --help

内部命令的帮助文档使用help的格式为:help -命令

如:help cd

3,type来判断到底为内部命令还是内部命令

如:

[root@localhost ~]# type help    //查看help命令的内外类型

help is a shell builtin        //可以看到help为内部命令

[root@localhost ~]# type passwd    //查看passwd这条命令是否在linux系统中存在

passwd is /usr/bin/passwd          //可以看到passwd的存储位置,因此存在,为外部命令

[root@localhost ~]# type cd        

cd is a shell builtin

那么passwd即为外部命令,那么cd为内部命令

4,使用which命令查找可执行文件(外部命令、脚本)

-由于which命令解释太长,所以另起炉灶了

4-1,which可搜索的范围由环境变量PATH决定,通常情况下,管理员与普通用户的PATH变量是不同的,可分别以root用户、普通用户test登入后执行echo $PATH 查看。

 

[root@localhost ~]# su - root

[root@localhost ~]# su - test    //切换到test用户

[test@localhost ~]$ echo $PATH    //查看test用户的环境变量

/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/test/bin

[test@localhost ~]$ exit

logout

[root@localhost ~]# echo $PATH    //查看root用户的环境变量

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

[root@localhost ~]#

4-2,用which查看mkdir和cp命令的执行程序位置:

[root@localhost ~]# which mkdir        //mkdir命令存储的位置

/bin/mkdir

[root@localhost ~]# which cp        //cp命令存储的位置

alias cp='cp -i'

       /bin/cp

[root@localhost ~]#

从上述结果可以看到,which的输出结果包括了命令别名。这是因为Linux为了方便用户使用,设置了which别名以添加别名搜索所致。

 

4-3,下面取消别名来查看which cp命令的结果

[root@localhost ~]# alias which    //查看which的别名其实相当于下面的绿色的一行命令组合

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

[root@localhost ~]# /usr/bin/which mkdir    //只查找第一目标

/bin/mkdir

[root@localhost ~]# /usr/bin/which cp

/bin/cp

[root@localhost ~]#

4-4,which的参数-a

which查询的路径为$PATH,那么当查询到第一个命令所在的目录后就会直接显示,那么如果后面的目录中也存在该命令,那么将不会显示,所以,需要使用-a参数。

 

[root@localhost ~]#which -a mkdir //查找所有目标

/bin/mkdir

/usr/bin/mkdir

4-5,由于内部命令是内建在/bin/bash解释器中的指令,并没有独立的可执行文件存在,所以尝试用which来搜索是找不到的。例如,用which找cd、help等内部命令时会提示找不到结果

 

[root@localhost ~]# which cd    //查看内部命令cd存在的位置

/usr/bin/which: no cd in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)        //可以看到,是不存在的

[root@localhost ~]# which help

/usr/bin/which: no help in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)

 

[root@localhost ~]#



注:一般用help命令查看内部命令!!!

 

 

这是最基本的linux帮助命令,虽然简单,但是用法常被搞混,本来which这个命令打算拿到whereis、which、whatis、locate命令一块说,又怕给自己搞迷了,whatis和which就现在这里搞了!