如果失败或复制功能失败?

时间:2013-06-13 10:58:43

标签: bash if-statement cp

我有一个小的bash脚本,我比较两个文件。如果一个不存在而第二个存在,那么我将备份复制/替换到主文件夹。

不知何故,这似乎不起作用。希望有人可以帮忙解决这个问题:

#!/bin/bash

if [ ! -f "/Folder1/$1.jpg" ] && [ -f "/BU_Folder2/$1_BU.jpg" ]; then
     cp -fp /BU_Folder2/$1_BU.jpg /Folder1/$1.jpg
     cp -fp /BU_Folder2/$1_BU.mp4 /Folder1/$1.mp4
fi

1 个答案:

答案 0 :(得分:0)

在提示符下,运行以下命令:

$ set -- FILENAME # FILENAME is the value you think $1 is supposed to have
$ [ ! -f "/Folder1/$1.jpg" ] && [ -f "/BU_Folder2/$1_BU.jpg" ] && echo success

如果最后一个命令没有打印“成功”,那么您的脚本可能没有您认为的$1值。将echo $1添加到脚本顶部进行确认。

如果它确实打印“成功”,并且您的脚本没有cp的错误输出,我不知道该建议什么。