Linux曲径通幽:常用命令(文件搜索命令、目录命令)

命令      命令所在路径     执行权限        功能描述                                          语法             

which   /usr/bin/which    所有用户        显示系统命令所在的目录和别名   which 命令

 

 

命令      命令所在路径            执行权限        功能描述                                          语法             

whereis  /usr/bin/whereis    所有用户        显示系统命令的目录和帮助文件   whereis 命令

 

Linux从PATH定义的路径中找寻命令,所有命令不用麻烦打绝对路径
echo $PATH查看路径,:隔开

 

命令      命令所在路径     执行权限        功能描述                    语法             

find       /usr/bin/find        所有用户        查找文件或者目录    find 搜索路径 搜索关键字


find /etc -name init在目录/etc中查找文件init【*匹配任意字符,?匹配单个字符】
find / -size +204800在根目录下查找大于100MB的文件【100M=102400K=204800block】
find /home -user samlee根目录下查找所有者为samlee的文件
find /etc -ctime -1在etc目录下查找24小时内被修改过的文件和目录
find /etc -size +163840 -a -size -204800在etc目录下查找大于80M小于100M的文件和目录

a表示连接and 还有o(r)
find /etc -name initab -exec(-ok表示要询问) ls -l {} \;在etc目录下查找initab并显示详细信息
{}表示find查询的结果,\表示转义符,符号命令使用本身的含义
按照时间
1、天  ctime   atime    mtime
2、分钟cmin    amin     amin
c-change改变,表示文件属性被修改过,包括所有者、所属组、权限
a-access访问
m-modify表示文件内容被修改过

-之内 +超过 -少于
按照类型-type
-f表示二进制
-d表示目录
-l表示软链接

如果有些文件的名称很不标准,在删除或者查找的时候都不能用普通的方式,那么可以用i节点的方式
ls -i获取文件的i节点
find . -inum i节点数字
比如我们要删除当前目录的"a b"
find . -inum 16 -exec rm -rf {} \;就可以删除这个文件了,16是ls -i查到的文件的i节点

find【搜索范围】【搜索条件】
-name 按照文件名搜索
-iname 文件名不区分大小写

按照权限搜索

 

Linux中的通配符

#find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配的。
* 匹配任意内容(任意多个字符)
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
find desktop/ -name "ab[cd]"匹配abc或abd

按照所有者来搜索

-user 按照所有者搜索,如find /root -user root是找root目录下所有者为root的文件
-nouser 是找没有所有者的文件,如find /root -nonuser是找root目录下没有所有者的文件

按照时间来搜索

find 【搜索范围】 -(X)time (+/-)时间
find /root -mtime +10是查找十天前修改的文件
+10 10天前修改的文件
10 10天当天修改的文件
-10 10天内修改的文件
atime 访问文件的时间
ctime 改变文件属性的时间
mtime 修改文件内容的时间

按照大小来搜索

find 【搜索范围】-size (+/-)X(k/M)
小写k是kB,大写M是MB
find /root -size +10k是查找root目录下大小大于10kB的文件

按照i节点来搜索

find 【搜索范围】-inum 【i节点号】
ls -i 【文件名】正好相反

多条件查询

find /root -size +20k -a -size -50k查找20~50kB大小的文件
find /root -size -20k -o -size +50k查找小于20或者大于50kB的文件
find /root -size +20k -a -size -50k -exec ls -lh {}\;查找20~50kB的文件,并列出详细信息
-exec/-ok 命令 {} \;用来继续处理搜索到的文件
find /root -inum 606838 -exec rm -rf {} \;找到i节点号为606838的文件然后删除

 

 

命令      命令所在路径     执行权限        功能描述                    语法             

locate   /usr/bin/locate    所有用户       寻找文件或者目录   locate 搜索关键字

locate 文件名在后台数据库中按文件名搜索,速度更快
这个数据库是/var/lib/mlocate,它的更新速率默认是一天一次,Linux版本的不同,名字不同,Mac下在/var/db/locate.datebase
可以使用updatedb命令强制更新数据库,Mac下是sudo /usr/libexec/locate.updatedb,根据距上次更新后更改的文件数目多少,速度不同
只能通过文件名来搜索
遵守/etc/updatedb.conf配置文件里的筛选规则,所以即使你更新了数据库也不一定能locate到所要寻找的文件

 

 

命令             命令所在路径           执行权限        功能描述                                        

updatedb   /usr/bin/updatedb    root                 更新整个系统目录文件的数据库

 

 

 

命令      命令所在路径     执行权限        功能描述                                                  语法             

grep      /bin/grep             所有用户       在文件中搜索字符串匹配的行并输出   grep【指定字符串】【源文件】

grep ftp /etc/services  在/etc/services中搜索ftp的行

find用于搜索文件,名字可以使用通配符匹配,可以使用-regex来指定使用正则

grep用于搜索文件内容,使用正则匹配

 

 

命令      命令所在路径     执行权限        功能描述                    语法             

man      /usr/bin/man     所有用户       获取帮助信息              man【命令或者配置文件】

man ls查看命令的帮助信息
man services查看配置文件services的帮助信息
如果命令和配置文件同名,优先查看命令的帮助信息
man 5 passwd 就是查看passwd这个配置文件
默认是1,命令的帮助;5是配置文件的帮助;一共有9种。

 

 

 

命令      命令所在路径     执行权限        功能描述                    语法             

info       /usr/bin/info        所有用户       获取帮助信息             info 任何关键字


info ls查看ls指令的帮助信息

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值