【从0开始学习Linux】Linux中的常用命令 (三)

Linux中的常用命令 (三)

which

英文原意 which
命令所在路径 /usr/bin/which
执行权限:所有用户
功能:显示文件内容,可以看到别名记录
语法:which [命令名称]
范例:
which ls

【从0开始学习Linux】Linux中的常用命令 (三)

whereis

英文原意 whereis
命令所在路径 /usr/bin/whereis
执行权限:所有用户
功能:显示文件内容,可以看到命令所在帮助文档的位置
语法:whereis [命令名称]
范例:
whereis ls
【从0开始学习Linux】Linux中的常用命令 (三)

find

英文原意 find
命令所在路径 /usr/bin/find
执行权限:所有用户
功能:查找文件或者目录
语法:find [搜索路径][搜索关键字]
范例:
find /etc/test2 init 只能匹配文件名就是init的文件
find /etc/test2 init* 可以匹配以init开头的文件
find /etc/test2 *init 可以匹配以init结尾的文件
find /etc/test2 * init * 可以匹配含有init的文件
find /etc/test2 init??? 匹配以init开头且一共7位字符的文件
*表示任意字符,?表示单个字符
【从0开始学习Linux】Linux中的常用命令 (三)
↑test2文件夹中有三个文件 aaainit init initaaa
【从0开始学习Linux】Linux中的常用命令 (三)
↑分别得到的搜索结果如上
【从0开始学习Linux】Linux中的常用命令 (三)
↑得到含有init的所有文件
【从0开始学习Linux】Linux中的常用命令 (三)
↑得到以init开头且为7个字符的文件

find有一些特殊的用法,比如:

<一>根据文件的大小查找
find [目录] -size {+ - =}[文件大小]
+表示超过
-表示小于
=表示相等(基本用不到,因为,不可能记得住文件的大小)
find / -size +204800 在根目录下查找文件大小大于100M的文件
一般来说文件的大小基本以数据块为单位,一个数据块为512字节

<二>根据文件的修改时间查找
find [目录] -{时间的基本单位} [+ -时间] 、
时间的基本单位如下:
天数 ctime,atime,mtime
分钟 cmin amin mmin 常用分钟
c-change改变,表示文件的属性被修改,所有者,所有数组,权限等
a-access访问
m-modify修改,表示文件的内容修改
- 表示在时间之内
+表示超过时间之外
举例:
find / -ctime -1 在根目录下查找一天之内被改变的文件
find / -amin -60 在根目录下查找一个小时之内被访问的文件

<三>根据文件的所有者查找
find [目录] -user [用户名]
find /etc/test2 -user root 在/etc/test2目录下查找用户名为root的文件
【从0开始学习Linux】Linux中的常用命令 (三)
find是一个重要用法,各种用法可以通过连接符来结合使用,查找到某一个具体的文件
连接符有两种,如下
-a and
-o or

find /etc -size +163840 -a -size -204800 查找文件大小在两者之间的文件
-type
f-二进制文件
l-软连接
d-目录
find /etc -size +10 -a -type -d 查找文件大小大于10个数据块,并且是目录的文件
【从0开始学习Linux】Linux中的常用命令 (三)
-exec
find …-exec [命令] {}\;固定格式
find /etc -name test2 -exec ls -l {}\ ;查找文件名称为test2的文件,并且显示目录的文件
其中尾部的{} \ ;含义如下
{}中是find查询的结果
\ 转意符,符号命令使用本身的含义
【从0开始学习Linux】Linux中的常用命令 (三)
当系统中存在一些名称特别的文件时,可以使用find [路径] -inum [节点数] -exec rm {};来进行删除
-ok
ok与exec的区别是,ok会有一个询问的过程
find /etc -name test2 -ok ls -l {}\ ;查找文件名称为test2的文件,并且显示目录的文件
如下
【从0开始学习Linux】Linux中的常用命令 (三)

locate

英文原意 locate
命令所在路径 /usr/bin/locate
执行权限:所有用户
功能:寻找文件或者目录
语法:locate [文件或者目录名称]
范例:
which ls
locate是根据文件数据库来找,可能出现找不到的情况(刚出现),因此会和updatedb来配合使用

updatedb

英文原意 update the slocate database
命令所在路径 /usr/bin/updatedb
执行权限:root
功能:建立整个系统文件目录的数据库
语法:updatedb
范例:
updatedb

grep

命令所在路径/bin/grep
执行权限:所有用户
功能:在文件中搜索字符串匹配的行输出
语法:grep[指定字符串][源文件]
范例:
grep ftp /etc/services

man

英文原意 manual
命令所在路径/usr/bin/man
执行权限:所有用户
功能:查看命令帮助或者配置文件
语法:man[命令或者配置文件]
范例:
man services
如果同时有文件与配置命令重名,则会优先查看命令帮助,可以通过以下方法查看配置文件帮助
man 5 passwd 配置文件的帮助
man 1 passwd 命令的帮助
【从0开始学习Linux】Linux中的常用命令 (三)

info

英文原意 information
命令所在路径/usr/bin/info
执行权限:所有用户
功能:查看帮助信息
语法:info[命令或者配置文件]
与man的用法基本相同
【从0开始学习Linux】Linux中的常用命令 (三)

whatis与apropos

英文原意 whatis
命令所在路径/usr/bin/whatis
执行权限:所有用户
功能:查看命令最为基本的用法
语法:info[命令或者配置文件]、
whatis ls
whatis ls --help
【从0开始学习Linux】Linux中的常用命令 (三)
获得索引的简短说明信息
apropos fstab

makewhatis

英文原意 makewhatis
执行权限:所有用户
功能:建立whatis与apropos搜索使用的数据库,当使用这两个命令出现错误时,就是whatis database没有建立
语法:makewhatis
makewhatis

help

英文原意 help
执行权限:所有用户
功能:查看shell内置命令的帮助
语法:help [命令]
help cd
如果man查不到,可能是内置命令。