我正在尝试使用 scp 将上传的文件移动到另一台服务器。以下是我正在使用的脚本和错误;
“mv.sh”
#!/bin/sh
now=$(date +"%y-%m-%d-%M")
cd /var/www/upload
if [ -f /var/www/upload/* ];
then
scp -P 88 * [email protected]:backup/
STATUS=$?
echo "$now-S1:succesful." >> /var/log/mv_to.log
else
echo "$now-S1:Error!!" >> /var/log/mv_to.log
fi
错误;
[: 13: /var/www/upload/1.doc: unexpected operator
如果只有一个文件,它工作正常,如果有两个或多个文件,它会显示意外操作员。请在这里纠正我。
答案1
问题出在你的 if 语句上。你可以将其替换为:
if [ -d /var/www/upload/ ];
(它不会检查文件是否存在,如果有多个文件则会出错,而是检查目录是否存在)