0

我必须使用 bash 脚本将文件从一个文件夹复制到另一个文件夹。如果目标文件夹有一个名称相同但时间戳较旧的文件,则不应复制。只应复制较新的文件。我本可以使用 cp -u,但我被要求不要使用它。基本上我必须使用测试命令测试“ot”。请让我知道如何做到这一点。我相信可以使用两个 for 循环,一个用于读取源中的文件,一个用于目标目录,并比较时间戳。问题是两个 for 循环都会产生绝对路径名和文件名。所以不知道如何比较它们

谢谢

4

1 回答 1

1

您可以从参数替换中受益:

for file in "$folder1"/* ; do
    filename=${file##*/}       # Remove everything to the last slash.

或者,您可以更改目录:

cd "$folder1"
for file in * ; do
    ## you have to use full or relative path to $folder2 here
于 2013-02-05T20:22:30.527 回答