MacOS上传文件到windows ftp时链接文件不见了

Posted zndxall

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MacOS上传文件到windows ftp时链接文件不见了相关的知识,希望对你有一定的参考价值。

最近打包遇到了一个问题,打包完MAC的sdk包后,得到的是一个framework的文件夹,我们需要将这个framework传到ftp服务器上,另外,还要把这个文件夹下的Release文件夹里的文件替换掉源码Demo里的文件,也就是是ftp上要有framework文件夹和demo文件夹。这个framework文件夹,我们叫他LBCast_FrameWork,目录结构如下:

技术图片

 

 替换到Demo文件中的上面图片的“1” “2” 这两个文件夹,软链接文件正常情况是如下的(带这种小箭头的):

                                                  技术图片

 

因为我是从mac机器上传包到windows的ftp机器上,所以我先压缩文件,然后再传。

 我的步骤是:

(1)将文件夹HPCastResources.bundle 和 HPCastWork.framework 复制到Demo文件对应目录下

命令是: cp  -rn LBCast_FrameWork/Release/* Demo/

(2)将Demo和LBCast_FrameWork 分别压缩成zip文件

命令:zip -r -q Demo.zip  Demo

           zip -r -q LBCast_FrameWork.zip   LBCast_FrameWork

(3)用curl命令上传到ftp上: 

        curl -u ftp用户名:ftp密码 -T "Demo.zip"  ftp://ftp的ip/output/

        curl -u ftp用户名:ftp密码 -T "LBCast_FrameWork.zip"  ftp://ftp的ip/output/

但是,当我从ftp上下载刚才传上来的Demo.zip 和LBCast_FrameWork.zip,解压后,软链接没有了!!! 

调试(一定要在mac上调试,windows看不出软链接文件):

    直接在mac压缩成zip,再解压是没问题的,但是执行zip  -r 压缩,然后再用unzip 解压就出问题了,软连接不见了

    想着压缩除了zip还有tar,我用tar试试,tar -cvf LBCast_FrameWork.tar LBCast_FrameWork  再解压,尽然没问题!!!

   好了,都改成tar吧,我还是把Release下的文件复制到Demo里,然后将Demo也压缩成tar包,再传到ftp。

  再下载试试,LBCast_FrameWork.tar解压了,软链接还在,嘻嘻,为自己的机智点个赞!!

  再试试Demo.tar ,解压了,软链接没有了,是不是复制有问题啊,原文件没毛病啊,啊啊,苍天饶过谁啊!!

 好吧,man cp 看看, -R 好像可以,有软链接的描述,改成cp  -R LBCast_FrameWork/Release/* Demo/,mac上看了下,软链接可以了,嘻嘻,不能高兴太早了,再压缩成tar包,传到ftp上,下载Demo.tar 解压看看,软链接还在!!! 我真是棒棒哒!!!!

但是 why ??? 如果你知道,麻烦在评论里分享下~~

 

修改后的命令如下:

(1)将文件夹HPCastResources.bundle 和 HPCastWork.framework 复制到Demo文件对应目录下

命令是: cp  -R LBCast_FrameWork/Release/* Demo/

(2)将Demo和LBCast_FrameWork 分别压缩成zip文件

命令:tar -cvf Demo.tar  Demo

          tar -cfv LBCast_FrameWork.tar   LBCast_FrameWork

(3)用curl命令上传到ftp上: 

        curl -u ftp用户名:ftp密码 -T "Demo.tar"  ftp://ftp的ip/output/

        curl -u ftp用户名:ftp密码 -T "LBCast_FrameWork.tar"  ftp://ftp的ip/output/

以上是关于MacOS上传文件到windows ftp时链接文件不见了的主要内容,如果未能解决你的问题,请参考以下文章

2.1.5基础之命令行链接ftp dos中的ftp上传下载文件

2.1.5基础之命令行链接ftp dos中的ftp上传下载文件

控制台应用程序 - FTP 上传停止执行

Windows通过FTP上传下载文件到Linux

从安卓手机上传文件到FTP服务器?

windows 命令行不支持被动ftp,如何通过写windows批处理,定时上传文件到FTP服务器?