我正在尝试创建一个cron作业,它在早上每隔6:00创建一个新文件,并给他一个完整的644权限(写入&),然后将其复制到另一个位置。如何创建多任务cron作业?
我是否需要创建2个不同的cron作业?一个用于创建和一个用于复制?现在我做了文案的一部分(我手动创建的文件):
*/2 * * * * cp -rf /var/www/html/emaillist.txt /home/uview/emaillistforwatch/
我正在尝试创建一个cron作业,它在早上每隔6:00创建一个新文件,并给他一个完整的644权限(写入&),然后将其复制到另一个位置。如何创建多任务cron作业?
我是否需要创建2个不同的cron作业?一个用于创建和一个用于复制?现在我做了文案的一部分(我手动创建的文件):
*/2 * * * * cp -rf /var/www/html/emaillist.txt /home/uview/emaillistforwatch/
我认为你可以使用选项“& &”,因为选项,可以在运行的cronjob多任务。
例:
*/2 * * * * mkdir /var/www/html/test && cp -rf /var/www/html/emaillist.txt /var/www/html/test
,或者可以创建文件脚本和scirpt添加多任务处理。在cron中添加文件scritp后,运行就可以了。
例: 文件test.sh:
#!/bin/bash
dir=$(pwd)
mkdir test
cp test.txt test
echo "done"
在cron:
*/2 * * * * bash test.sh
什么是更好或更有效的方法?添加&&或编写专门用于此目的的新脚本? –
只有少数使用'&&'的小型服务。但在许多情况下,您想要执行多个任务和服务,您应该创建一个bash(脚本.sh)文件来执行这些任务。 – Tannetto
你也可以同时使用脚本和 '& &'
了 '& &' 强制将被后(仅后)的第一个命令全面实施
例如运行第二个命令:
touch script.sh
chown a+x script.sh
vim script.sh
#!/bin/bash
touch /YOUR_FILE_ADDRESS/file.txt && chown 644 /YOUR_FILE_ADDRESS/file.txt && cp /YOUR_FILE_ADDRESS/file.txt /DESTINATION_ADDRESS echo "`date` done" >> result.log
和配置的crontab:
crontab -e
0 6 * * * /SCRIPT_ADDRESS/script.sh
我想你可以在1个脚本中合并这两个操作,只是告诉脚本先将旧文件复制到新目录,然后让它创建/覆盖旧的目录,但请在运行创建操作之前先验证复制操作 – rachmatsasongko
您可以将创建和复制命令添加到bash脚本中,并将其用作从crontab运行的命令 –