找出linux系统中新修改的文件的方法
时间:2014-09-15 02:20 来源:linux.it.net.cn 作者:it
介绍:在Linux系统下, 找出新修改的文件,并且,复制到 合适的位置。
#注意:每次修改代码前,在/var/www/html/jitong360temp 下面 touch time.txt
[root@bogon jitong360temp]# pwd
/var/www/html/jitong360temp
[root@bogon jitong360temp]# touch time.txt
[root@bogon html]# pwd
/var/www/html
[root@bogon html]# chmod +x find-alter-files.sh
[root@bogon html]# ./find-alter-files.sh jitong360temp
[root@bogon html]# gedit find-alter-files.sh
复制代码代码如下:
#!/bin/sh
#用shell写了个递归遍历目录的脚本,本脚本实现递归遍历指定目录,打印目录下的文件名(全路径)。
#注意:每次修改代码前,在/var/www/html/jitong360temp 下面 touch time.txt
#存放修改后的文件 /root/var/www/html/jitong360temp
#newerdir="/root"
function scandir() {
local cur_dir parent_dir workdir newerdir
newerdir="/root"
workdir=$1
cd ${workdir}
if [ ${workdir} = "/" ]
then
cur_dir=""
else
cur_dir=$(pwd)
fi
for dirlist in $(ls ${cur_dir})
do
if test -d ${dirlist};then
cd ${dirlist}
scandir ${cur_dir}/${dirlist}
cd ..
elif test -f ${dirlist};then
#在Linux系统下, 找出新修改的文件,并且,复制到 合适的位置
#注意:每次修改代码前,在/var/www/html/jitong360temp 下面 touch time.txt
newer=`find ${dirlist} -newer /var/www/html/jitong360temp/time.txt`
if [ "${newer}" == "${dirlist}" ];then
tmp_dir=$(pwd)
mkdir -p ${newerdir}${tmp_dir} 2> /dev/null
cp ${newer} ${newerdir}${tmp_dir}
fi
fi
done
}
if test -d $1
then
scandir $1
elif test -f $1
then
echo "you input a file but not a directory,pls reinput and try again"
exit 1
else
echo "the Directory isn't exist which you input,pls input a new one!!"
exit 1
fi
(责任编辑:IT)
介绍:在Linux系统下, 找出新修改的文件,并且,复制到 合适的位置。
[root@bogon jitong360temp]# pwd
[root@bogon html]# pwd [root@bogon html]# gedit find-alter-files.sh
复制代码代码如下:
#!/bin/sh #注意:每次修改代码前,在/var/www/html/jitong360temp 下面 touch time.txt
#存放修改后的文件 /root/var/www/html/jitong360temp
function scandir() {
fi (责任编辑:IT) |