Rsync 本地和服务器上文件夹路径对应的问题?
为了把本地的
repo/
目录对应上传到 VPS 的
repo/
我写了这样的脚本,
以便运行
up a
时,
repo/a/
能在服务器同步出现
repo/a
:
function up {
rsync -avzl --delete --stats --progress \
--exclude-from /Users/chen/repo/.rsyncignore \
~/repo/$1 \
digital:/home/chen/repo/
}
为了单独同步名字是
repo/cirru/
的子目录, 我又增加了一个脚本,
对应两边的路径增加了
cirru
, 以便同样的目录结构被拷贝:
function upcirru {
rsync -avzl --delete --stats --progress \
--exclude-from /Users/chen/repo/.rsyncignore \
~/repo/cirru/$1 \
digital:/home/chen/repo/cirru/
}
然而运行
upcirru a
时, 问题出现了, 本地使用的是
repo/cirru/a
路径,
而服务器上对应变成了
repo/cirru/
而不是预期的
repo/cirru/a
.
就是说, 在两个不同的目录输入时, 目标文件的确定是不同的...
我很不理解这里发生了什么... 不知道是否有同学遇到过类似问题?