怎样递归处理多层目录下的文件

sh/bash/dash/ksh/zsh等Shell脚本
回复
BBT4XD
帖子: 38
注册时间: 2008-09-05 23:13

怎样递归处理多层目录下的文件

#1

帖子 BBT4XD » 2009-03-21 15:29

一个从WINDOWS下拷的文件夹,里面还有很多层目录,怎样把里面所有文件的可执行权限去掉?
头像
daf3707
论坛版主
帖子: 12739
注册时间: 2007-06-13 15:57
来自: 在他乡

Re: 怎样递归处理多层目录下的文件

#2

帖子 daf3707 » 2009-03-21 15:34

用-R参数?
BBT4XD
帖子: 38
注册时间: 2008-09-05 23:13

Re: 怎样递归处理多层目录下的文件

#3

帖子 BBT4XD » 2009-03-21 15:59

我写了一个脚本,不起作用

#! /bin/bash
# new是目录名
for i in `ls -R new`; do
if [ -f $i ]; then
chmod -x $i
fi
done

我也试过 chmod -R -x new 结果把里面目录的执行权限都消除,进不去了。
头像
daf3707
论坛版主
帖子: 12739
注册时间: 2007-06-13 15:57
来自: 在他乡

Re: 怎样递归处理多层目录下的文件

#4

帖子 daf3707 » 2009-03-21 16:18

你-R等于把读的权限去掉了吧 :em20
位置不对

chmod -x new -R
试试吧,平时都……
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

Re: 怎样递归处理多层目录下的文件

#5

帖子 xiooli » 2009-03-21 16:38

用find . -type f -iname "*" -exec chmod a-x {} \;
BBT4XD
帖子: 38
注册时间: 2008-09-05 23:13

Re: 怎样递归处理多层目录下的文件

#6

帖子 BBT4XD » 2009-03-21 16:59

xiooli 写了:用find . -type f -iname "*" -exec chmod a-x {} \;
可以了,谢谢。
isingle
帖子: 39
注册时间: 2007-04-14 10:22

Re: 怎样递归处理多层目录下的文件

#7

帖子 isingle » 2009-05-15 12:58

find ./ -type f -iname "*.xls" -exec rm -v {} \;
现学现卖,感谢5楼提供。
run ubuntu 10.10 on Lenovo ThinkPad R400
回复