我在OLD目录中有一系列文件,我想检查文件是否存在于NEW目录中。如果它不存在,我想对它进行一些操作

时间:2014-04-18 19:27:42

标签: linux shell unix ksh

例如......我在OLD目录中有一些格式为mmddyy.zip的文件......

041414.zip
041514.zip
041614.zip
041714.zip
041814.zip(today's file Apr 18 2014)

我有一个041414.zip 041514.zip的新目录...... 我试图将所有文件从OLD复制到NEW,如果该文件在NEW目录中不存在则执行其他操作... 我正在考虑这样做'虽然做'声明,但不确定在条件中使用什么......

谢谢, 萨姆。

1 个答案:

答案 0 :(得分:0)

您可能希望使用find,并执行执行检查和操作的脚本。

例如,script.sh(填写你自己的变量):

#!/bin/sh
FNAME="`basename $1`"
NEWDIR="/tmp"
NEWFNAME="$NEWDIR/$FNAME"
if [ ! -f "$NEWFNAME" ]; then
    # do stuff to "$1"
    # optionally cp "$1" "$NEWFNAME"
fi

然后你运行cd /old/dir; find -name "*.blah" -exec script.sh "{}" ";"

之类的东西