unix命令——find、xargs

本文详细介绍了Linux下find命令的使用方法,包括查找路径、文件名、所有者、文件类型及大小等选项,还介绍了如何利用-print、-exec和-ok进行后续处理,并通过实例展示了find与xargs结合使用的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

find-查找文件,下面只是简单的介绍,足够应对平常的使用。

命令格式  find [pathname] -option [-print -exec -ok]

1、pathname-查找的路径,没有指定时默认为当前目录

2、option常用的有以下几个
-name (文件名)
-user (所有者)
-group (所有组)
-type (类型 f(普通文件),d(目录),l(符号链接),c(字符设备文件)、b(块文件设备))
-size (大小) +n 表示大小大于n,-n表示小于n
-depth 选项表示先访问本目录下的所有文件,然后访问子目录

-fstype 指定的文件系统  如:ext

-mtime -n +n创建时间(时间单位为:天) -n 表示最近n天内创建的,+n表示,n天以前创建的


3、[-print -exec -ok]后续处理
-print 表示对于匹配的每一项进行打印(默认处理)
-exec command -initargs {}\; 对匹配的每一项执行后面command(initargs为该命令的启动参数),需要注意的是,末尾必须接{} \; 例如 find -type f -exec ls -l {} \;
-ok 与exec一样,但按说明比上面的exec要更安全


补充:
由于exec的命令长度在不同的系统上是有所限制的,作为一种等价的转换或者说改进,可以使用xargs进行组合使用

xargs命令是从标准输入中获取参数,来运行相应的命令。例子如下。
find -type f -exec ls -l {} \; //后面 {}  \;这三个符号绝对不能缺省
find -type f|xargs ls -l 与上面是等价的

不过,虽然功能上是等价的,但是从运行的实际效率来看,似乎后者更快
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值