在我的 Synology 服务器上,我有一个源文件夹/volume1/Temp/a
和一个目标文件夹/volume1/Temp/b
。
我希望有一个脚本,可以安排在 DSM 的控制面板/任务计划程序下每天运行,以将所有文件从源文件夹移动到目标文件夹。我进行了一些搜索,这是我目前所做的,但它不起作用。
我创建了一个文件/usr/local/bin/movefiles.sh
并授予其执行权限。
我在 DSM 任务调度程序下创建了一个用户定义脚本,运行以下命令:/usr/local/bin/movefiles.sh >> /var/log/movefiles.log 2>&1
movefiles.sh中的代码:
$sSrc="/volume1/Temp/a"
$sDst="/volume1/Temp/b"
find $sSrc -type f -maxdepth 1 -name "*.*" -exec mv {} $sDst \;
我收到的错误是这样的:
/usr/local/bin/movefiles.sh: line 1: =/volume1/Temp/a
: No such file or directory
/usr/local/bin/movefiles.sh: line 2: =/volume1/Temp/b
: No such file or directory
/usr/local/bin/movefiles.sh: line 3: $'\r': command not found
mv: missing destination file operand after './SYNO.Core.SNMP.lib'
Try 'mv --help' for more information.
mv: missing destination file operand after './SYNO.Core.Security.DoS.lib'
Try 'mv --help' for more information.
mv: missing destination file operand after './SYNO.Backup.Service.NetworkBackup.lib'
Try 'mv --help' for more information.
mv: missing destination file operand after './SYNO.Core.Security.lib'
Try 'mv --help' for more information.
任何帮助都感激不尽。
答案1
您必须声明不带$的变量,即:
sSrc="/volume1/Temp/a"
sDst="/volume1/Temp/b"