Linux常用命令——find
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令——find相关的知识,希望对你有一定的参考价值。
因为考试以及一个月没有学习Linux相关知识了,之前所学的一些命令以及用户管理磁盘管理相关的知识,今后找机会复习一下。
隔了这么多天再次使用Linux我发现有些重要的命令忘记了怎么使用,尤其是find命令。因为Linux是命令行模式下使用的,所以需要查找文件什么的就十分麻烦,所以这时候find命令就十分重要,就像Windows下的查找框。
首先最常用的就是查找文件名:
find /filename -name ‘FILENAME‘:根据文件名作精确匹配,注意文件名要加引号!
比如 find /etc -name ‘passwd‘ 匹配在/etc下文件名有passwd的文件
这里文件名匹配还可以用正则表达式:
*:任意长度的任意字符
?:任意单个字符
[ ]:指定范围内的任意单个字符
这里find命令还可以接需要进行的操作,默认情况下是显示在屏幕中。
默认-print: 显示
-ls:类似ls -l的形式显示每一个文件的详细
-ok COMMAND {} ; 反斜线分号结尾,{}作为文件名称占位符;每一次操作都需要用户确认
-exec COMMAND {} ; 和上一个ok用法一样;只是每一次操作不需要用户确认。
比如:
find ./ -perm -006 -exec chmod o-w {} ; 在当前目录下找到其他用户可读可写的文件,将他的写权限去掉chmod o-w是命令{}表示引用你找到的文件。
find ./ -perm -020 -exec mv {} {}.new ; 在当前目录下找到属组有写权限的文件将他的名字改为原来的名字后面加.new,因为单纯用mv命令应该这样写mv name name.new,所以{}出现两次。只要引用文件名就要加{}。
操作一个命令最简单的就是去查找man手册,多看看就会了!
-regex PATTERN:基于正则表达式进行文件名匹配,PATTERN是正则表达式的模式;
-user USERNAME: 根据属主查找,查找属于某个属主的文件。
-group GROUPNAME: 根据属组查找
-uid UID: 根据UID查找
-gid GID: 根据GID查找
-nouser:查找没有属主的文件
-nogroup: 查找没有属组的文件
-type 根据文件类型查找
以上是关于Linux常用命令——find的主要内容,如果未能解决你的问题,请参考以下文章