gpt4 book ai didi

linux - 通过 linux .sh 脚本移动文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:51:40 24 4
gpt4 key购买 nike

我设置了一个脚本来将我的 /var/www 目录自动备份到 /root/Dropbox

当 Cron 执行脚本时,备份文件将移动到 /root/ 而不是 /root/Dropbox/。我已将 Dropbox 目录的权限设置为 722,因此写入该目录应该没有问题。

脚本如下:

NOW=$(date +"%Y-%m-%d-%H-%M")

#backup site

if tar -zcvf site-www-var-$NOW.tar.gz '/var/www'; then
echo "Backup of data created." 1>&2

if mv /home/site-www-var-* /root/Dropbox/; then
echo "Data Moved." 1>&2
else
echo "Data move failed." 1>&2
exit 1
fi
else
echo "Data backup failed." 1>&2
exit 1
fi

输出如下:

Backup of data created.
Data Moved.

最佳答案

正如@La Kantara所说,这一行

if tar -zcvf site-www-var-$NOW.tar.gz '/var/www'; then

可能会在执行该命令的用户的当前工作目录中创建 tarball 文件。

因此,我只需更改 tar 命令以使用 tarball 的完整文件路径。

if tar -zcvf /root/Dropbox/site-www-var-$NOW.tar.gz '/var/www'; then
^^^ ^^^^^^^

在这种情况下,您的 mv 命令也会变得多余

关于linux - 通过 linux .sh 脚本移动文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33388377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com