linux find -exec 用法

linux find -exec 用法

 

模式:

        find <dir> -name <expression> -exec <command> {} \;

 

       dir :检索路径

       expression: 表达式(通用模式,不是正则表达式)

       command: 二级命令

       {} : 表示find 每检索出来一条的替代符号,(固定格式)

       \;  (固定格式)

       另:{} \; 这两个固定格式之间是有空格的

 

如:

[user:public] find . -name test*.g* -exec ls -l {} \;
-rwxr-xr-x 1 user user 1441792  4月 29 23:37 ./lib_stream/simples/test.g711      #此时,{} 表示./lib_stream/simples/test.g711  
-rw-r--r-- 1 user user 3331  4月 29 23:32 ./app_dev/test.gps
-rw-r--r-- 1 user user 1441792  4月 29 23:32 ./app_dev/test.g711
[user:public]

我们可以做一下变形:

func() { find . -name $1  -exec ls -l  {} \; ; } ; func test*.g*

又如:

[user:public] func() { f $1  -exec ls -l  {} \; ; } ; func test*.g*
-rwxr-xr-x 1 user user 1441792  4月 29 23:37 ./lib_stream/simples/test.g711
-rw-r--r-- 1 user user 3331  4月 29 23:32 ./app_dev/test.gps
-rw-r--r-- 1 user user 1441792  4月 29 23:32 ./app_dev/test.g711
[user:public]

好了.把它加到 ~/.bashrc 里做一个别名

alias fll='func() { find . -name $1  -exec ls -l  {} \; ; } ; func '

如:
[user:public] fll test*.g*
-rwxr-xr-x 1 user user 1441792  4月 29 23:37 ./lib_stream/simples/test.g711
-rw-r--r-- 1 user user 3331  4月 29 23:32 ./app_dev/test.gps
-rw-r--r-- 1 user user 1441792  4月 29 23:32 ./app_dev/test.g711
[user:public]

 

command: 这个二级命令可以换成rm -rf 等. 也可以把检索出来文件名改名.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值