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时链接文件不见了的更多相关文章
- 从0在windows上一次性上传本地整个项目(包含所有文件/文件夹)到 Github
1.注册并登陆Github. 2.登陆进去之后的页面,点击这个“库”,这表示你在Github上上的代码仓库,我这里已经创建过一个了,所以数量是1 3.在仓库选项卡中,点击“新建”按钮添加一个项目. 4 ...
- Java实现文件上传到服务器(FTP方式)
Java实现文件上传到服务器(FTP方式) 1,jar包:commons-net-3.3.jar 2,实现代码: //FTP传输到数据库服务器 private boolean uploadServer ...
- 通过JAVA对FTP服务器连接,上传,下载,读取,移动文件等
记录一次对FTP服务器文件内容 通过Java程序对FTP服务器文件处理:连接,上传,下载,读取,移动文件等. 需求描述:今天接到一个任务,在Java项目中,读取FTP服务器上的一些文件,进行一些业务操 ...
- JAVA 实现FTP上传下载(sun.net.ftp.FtpClient)
package com.why.ftp; import java.io.DataInputStream; import java.io.File; import java.io.FileInputSt ...
- (配置)CKEditor+CKFinder+php上传配置,根据年月命名创建文件夹来存放
CKEditor+CKFinder+php上传配置 新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder.这里主要记录CKFinder上传的一些参数配置,能够成功上 ...
- Angular14 利用Angular2实现文件上传的前端、利用springBoot实现文件上传的后台、跨域问题
一.angular2实现文件上传前端 Angular2使用ng2-file-upload上传文件,Angular2中有两个比较好用的上传文件的第三方库,一个是ng2-file-upload,一个是ng ...
- thinkphp项目上传到github,为什么缺少很多文件
thinkphp项目上传到github,为什么缺少很多文件 问题: 把tp5项目push到码云(类似github)上,为什么没有thinkphp这个核心库? 然后我看了下码云和github上,官方的t ...
- PHP 多图上传,图片批量上传插件,webuploader.js,百度文件上传插件
PHP 多图上传,图片批量上传插件,webuploader.js,百度文件上传插件(案例教程) WebUploader作用:http://fex.baidu.com/webuploader/gett ...
- [转]ExtJs入门之filefield:文件上传的配置+结合Ajax完美实现文件上传的asp.net示例
原文地址:http://www.stepday.com/topic/?459 作文一个ExtJs的入门汉子,学习起来的确是比较费劲的事情,不过如今在这样一个网络资源如此丰富的时代,依然不是那么难了的. ...
随机推荐
- 高阶JS---函数柯里化
什么是函数柯里化? 百度百科: 在计算机科学中,柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术.通 ...
- 【西北师大-2108Java】第二次作业成绩汇总
2[西北师大-2108Java]第二次作业成绩汇总 以命令行方式或在Eclipse集成开发环境中编辑.编译.运行第3章示例程序3-1-3-5,结合程序运行结果理解程序代码,每个示例程序从语法.算法两个 ...
- pandas-缺失值处理
import pandas as pd import numpy as np Step 1.加载数据集 # header=0以第一行作为列名 tip = pd.read_csv("lianx ...
- ES2019 的新特性
JavaScript 不断演变,每次迭代都会得到一些新的内部更新.让我们来看看 ES2019 有哪些新的特性,并加入到我们日常开发中 Array.prototype.flat() Array.prot ...
- NOIP 2011 提高组初赛错题简析
Preface 好久没做初赛题了,据说今年的审核会更加严苛,作为一名去年未PY时只有\(92\)分的蒟蒻,我今年看来是\(90\)分都莫得了 然而今年也没怎么看重初赛,结果现在才来做,翻车到了\(84 ...
- Nginx的性能优化方案
nginx的优化 . gzip压缩优化 . expires缓存有还 . 网络IO事件模型优化 . 隐藏软件名称和版本号 . 防盗链优化 . 禁止恶意域名解析 . 禁止通过IP地址访问网站 . HTTP ...
- Flutter基础系列之混合开发(二)
1.混合开发的场景 1.1作为独立页面加入 这是以页面级作为独立的模块加入,而不是页面的某个元素. 原生页面可以打开Flutter页面 Flutter页面可以打开原生页面 1.2作为页面的一部分嵌入 ...
- 我的周记12——"站在现在看前人对未来的预测,很有意思"
万里风云三尺剑,一庭花草半床书 聊聊最近很火的5G B站有个up主 老师好我叫何同学 优秀啊,点赞. 他做了一个5G测速的视频火啦 视频链接:https://www.bilibili.com/vi ...
- Linux安装部署jdk+tomcat+mysql
Linux安装部署测试环境 1. JDK安装下载 安装 yum search jdk 找到合适的jdk版本,以下图中的版本为例 yum install java-1.8.0-openjdk.x86_6 ...
- Vue.js 源码分析(三十二) 总结
第一次写博客,坚持了一个多月时间,Vue源码分析基本分析完了,回过头也看也漏了一些地方,比如双向绑定里的观察者模式,也可以说是订阅者模式,也就是Vue里的Dep.Watcher等这些函数的作用,网上搜 ...