hdc_std 传输文件脚本
项目的使用步骤中有一步是向开发板发送文件,命令比较多:
1、测试设备是否存在:hdc_std list targets
2、使得data分区可写:hdc_std target mount
3、授予 hdc 后台进程 root 权限:hdc_std smode
4、执行发送文件:hdc_std file send [电脑端文件路径] [开发板目标文件路径]
5、进入命令交互界面:hdc_std shell
6、然后 cd 到目标文件:cd [开发板目标文件路径]
7、将文件解压使用:tar zxvf *.tar.gz
每次调试都要输入后几项命令,太繁琐,想到了用脚本整合一下,只需执行一个文件,即可实现文件的发送解压~
1、刚开始的几条命令比较执行,直接 bat 文件写即可:
2、接下来是 发送文件,也是可以用 bat 执行的:
(这里还有另一个思路,直接发 shell 脚本过去,执行解压即可)
3、接下来就不是平时常用的命令了,调用 shell 交互界面,执行 shell 命令:
最开始不知道怎么用 bat 命令写这种交互界面的命令,直到我在搜索 【hdc_std shell】 命令的时候,发现有很多命令都是直接跟着 【hdc_std shell】 的:
https://ost.51cto.com/posts/18548
于是我尝试了一下,直接接 shell 命令也是可以执行的,但 cd 命令倒是不好使:
我就打算直接解压对应目录下的 tar 包,结果他提示我:
tar: can't remove: Device.json: Read-only file system(之前的命令已经设置了读写权限,不知道为什么没有生效,而且我也检查了对应目录下并没有解压出来的文件)
后来又仔细看了下命令,找到了读写权限的指令,加上:
https://www.seaxiang.com/blog/5118b94734a5466683fc2110f2cb3e25
bat 命令:
再次执行解压,这次解压成功了,但是对应目录下还是没有文件(之前报错说系统只读,说明tar 解压命令已经成功了,要覆盖之前的同名文件,因为只读才失败,所以说明解压的位置有问题)
又去根目录查看了一下,还真的是在根目录下解压的:
查了下 tar 命令,怎么解压到目标位置:
https://www.jb51.net/article/275295.htm
修改下 bat 命令,追加 -c 指定文件夹
ok 搞定:
至此文件传输执行 一个 bat 文件,就可以发送到指定的开发板目录下了~
PS:
另一种思路,发送 .sh shell 脚本,再运行该 shell 脚本执行命令也是可行的(发送 tar 时,一起再多发送一个 .sh 脚本即可)
发送成功后,直接执行脚本命令即可:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2019-11-15 ag-grid 设置默认选中多行