Linux 中find命令与文件权限

Find指令


Linux下find命令在目录结构中搜索文件,并执行指定的操作。

(速度较慢 遍历文件 真真切切地查找)

1 命令格式

find pathname -options [-print -exec -ok ...]

2 命令功能

用于在文件树种查找文件,并做出相应处理(可能访问磁盘)

3 命令参数

pathname:find 命令所查找的目录路径。

例如:. 表示当前目录  用/表示系统根目录

-print : find 命令将匹配的文件输出到标准输出中。

-exec: find命令对匹配的文件执行该菜蔬所给出的shell命令。

相应的命令形式为’command’  {  } \; 注意{ }和\之间的空格。

-ok: 和-exec的作用相同,只不过是以一种更安全的模式来执行给出的shell命令,在执每一个命令之前,都会给出提示,让用户来确定是否执行。

4 命令选项:

-name    按照文件名查找文件

配合通配符使用

-perm    按照文件权限来查找文件

-prune   使用这一选项可以使用find命令不在当前指定目录查找,如果同时使用-depth选项,那么-prune将被find命令忽略。

详见:http://blog.csdn.net/zzxian/article/details/8446703

-user    按照文件的属主来查找文件。

-group   按照文件所属的组来查找

-mtime   -n +n 按照文件更改时间来查找

n  n天先前1天

find ./ -mtime 4

-n 表示文件的更改时间距离现在n天以内

+n 表示文件的更改时间距离现在n天以前

find命令还有-atime 和 -ctime选项 但它们和-m time选项相同

-nogroup 查找无有效所属组的的文件,即该文件的所属组在/etc/groups中不存在

-nouser   查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在

-newer file1 ! -newer file2  查找更改时间比文件file1新但比file2旧的文件

-type 查找某一类型的文件,诸如:

b - 块设备文件

d - 目录

c -字符设备文件

p - 管道文件

l - 符号链接文件

f - 普通文件

-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计算

查找大小小于1kb的文件

-depth :在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。

参数-depth 的意思是:在处理目录以前首先处理目录下的子内容。
也即是说在不加-depth的时候, 处理顺序是首先处理目录本身,然后处理目录下的子内容。加不加-depth参数,会影响输出结构的输出顺序。

-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。

-mount:在查找文件时不跨越文件系统mount点

-follow : 如果find命令遇到符号链接文件,就跟踪到链接所指向的文件。-cpio: 对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。

另外:

下面三个的区别:

-建时间来查找文件, -n指n天以内  +n 指n天以前

例子

1 在/logs目录中查找更改时间在5月以前的文件并删除它们

2 Linux用find命令查找文件大小为XX的文件的方法

http://blog.chinaunix.net/uid-24648486-id-2998767.html

#-name 根据文件名查找(精确查找)

#-iname 根据文件名查找,但不区分大小写

*表示通配任意的字符

?表示通配任意的单个字符

[ ]表示 通配括号里面的任意一个字符

#-a 连接两个不同条件(两个条件必须同时满足 and 与)

#-o (or 或)

#-not (!)

#-atime #-mtime #-ctime #-amin #-mmin #-cmin

所以这里atime,mtime,ctime就是分别对应的“最近一次访问时间”“最近一次内容修改时间”“最近一次属性修改时间”,这里的atime的单位指的是“天”,amin的单位是分钟

#find /tmp –atime +5 //表示查找在五天内没有访问过的文件

#find /tmp -atime -5 //表示查找在五天内访问过的文件

---------------------------------------------------------------------------------

权限与指令之间的关系


1. 让用户能进入目录成为【可工作目录】的基本权限为何:

可使用的指令:例如cd等变换工作目录的指令;

目录所需权限:用户对这个目录至少需要具有x的权限;

额外需求:如果用户想要在这个目录内用ls查阅文件名,则用户对此目录还需要r的权限。

2. 用户在某个目录内读取一个档案的基本权限为何?

可使用的指令: 例如cat,more,less等;

目录所需要的权限:用户对这个目录至少需要x权限;(进入)

档案所需要的权限: 使用者对档案至少需要具有r的权限才行!

------特殊

3. 让使用者修改一个档案的基本权限为何?

可使用的指令: 例如nano或vim等

目录所需要的权限: 用户在该档案所在目录至少要有rw权限

4. 让一个使用者可以建立一个档案的基本权限为何?

目录所需权限:用户在该目录要有wx权限,

5. 让用户进入目录并执行该目录下的某个指令之基本权限为何?

目录所需权限:用户在该目录至少需要有x权限。

档案所需权限:使用者在该档案下至少需要有x权限。

让一个使用者能够进行【cp /fir1/file /dir2】的指令,请说明dir1,file1,dir2的最小所需权限为何?

· dir1 :至少需要有 x 权限;

· file1:至少需要有 r 权限;

· dir2 :至少需要有 w, x 权限。

时间: 2024-10-12 12:10:28

Linux 中find命令与文件权限的相关文章

Linux 中 cp 命令(文件复制)

cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下.cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误. 语法 cp(选项)(参数) 选项 -a:此参数的效果和同时指定"-dpR"参数相同: -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录: -f:强行复制文件或目录,不论目标文件或目录是否已存

Linux中常用命令(文件)

1.cat 显示出文件的全部内容 (1)格式:cat 文件名 -n 显示行号 (2)特点:一次性显示所有文件内容 2.tac 从最后一行倒着显示文件全部内容 3.more 全屏方式分页显示文件内容 回车翻一行 空格向下翻一页 b 向上翻一页 q 退出 4.less 与more相同,扩展内容更多 more和less区别: 显示到最后,more会自动退出,less不会 5.head 查看文件开头的一部分内容(默认10行) (1)格式:head 文件名 -n n为具体数字,显示n行 6.tail 查看

linux学习笔记——文件属性、文件权限及更改命令

#########################################################################################第六单元#########################################################################################################1.文件属性查看ls  -l  filename-         rw-rw-r--        

Linux命令:修改文件权限命令chmod、chgrp、chown详解

Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权 限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作.可执行权限表示允许将该文件作为一个程序执行.文 件被创建时,文件所有者自动拥有对该文件的读.写和可执行权限,以便于对文件的阅读和修改.用户也可根据需要把访问权限设置为需要的任何组合. 有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户.其他用户.所有者一般是文

linux中执行命令权限不够怎样处理

在linux中执行命令权限不够就要增加权限,先看遇到的情况 查看权限情况 那就赋予权限 执行命令

Linux中常用的查找文件的命令

我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索.这些是从网上找到的资料(参考资料1),因为有时很长时间不会用到,当要用的时候经常弄混了,所以放到这里方便使用. which       查看可执行文件的位置 whereis    查看文件的位置 locate       配合数据库查看文件位置 find          实际搜寻硬盘查询文件名称 (find也可以根据文件大小-size 时间-atime 正则表达式-regex) 1.which 语法:  [r

linux中touch命令参数修改文件的时间戳(转)

linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名) example: touch file1.txt 更新file1.txt的存取和修改时间 touch -c file1.txt 如果file1.txt不存在,不创建文件 touch -r ref_file file1.t

Linux下ls命令显示符号链接权限为777的探索

Linux下ls命令显示符号链接权限为777的探索 --深入ls.链接.文件系统与权限 一.摘要 ls是Linux和Unix下最常使用的命令之一,主要用来列举目录下的文件信息,-l参数允许查看当前目录下所有可见文件的详细属性,包括文件属性.所有者.文件大小等信息.但是,当其显示符号链接的属性时,无论其指向文件属性如何,都会显示777,即任何人可读可写可执行.本文从ls命令源码出发,由浅入深地分析该现象的原因,简略探究了Linux 4.10下的符号链接链接.文件系统与权限的源码实现. 关键词:Li

<实训|第十一天>学习一下linux中的进程,文件查找,文件压缩与IO重定向

[[email protected]~]#序言 在今后的工作中,运维工程师每天的例行事务就是使用free -m,top,uptime,df -h...每天都要检查一下服务器,看看是否出现异常.那么今天我们就讲解一下关于运维工程师例行事务的知识!  开班第十一天: [[email protected]~]#今天的课程大纲 查看进程,中断进程,切换进程 内存与swap分区 linux中文件查找的基本方法 linux中是如何解压缩文件的 关于I/O重定向的知识点 远程scp配合管道 详细讲解: [[e