我有一个用于在 macOS 上存档目录的脚本:
#!/bin/sh
BACKUPNAME=$(date "+%Y-%m-%d@%H:%M:%S")
BACKUPNAME="local-vaults-$BACKUPNAME.tar.gz"
tar czfh "/Users/henrik/backups/$BACKUPNAME" "/Users/henrik/vaults"
在 shell 中运行该脚本工作正常,但通过cron
存档运行它仅包含顶级目录:
% tar tvf local-vaults-2023-10-25@12:00:00.tar.gz
drwxr-xr-x 0 henrik staff 0 Apr 29 02:09 Users/henrik/vaults/
该vaults
路径是一个符号链接:/Users/henrik/vaults -> /Users/henrik/Library/Mobile Documents/iCloud~md~obsidian/Documents
,所以我尝试用完整路径替换源路径,仍然用双引号引起来,因为Mobile
和之间有一个空格Documents
,但这没有什么区别。