Chinaunix首页 | 论坛 | 博客
  • 博客访问: 100014
  • 博文数量: 28
  • 博客积分: 310
  • 博客等级: 二等列兵
  • 技术积分: 680
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-24 09:57
文章存档

2013年(10)

2012年(18)

分类:

2012-10-24 16:35:25

#在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

阅读(653) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~