电话咨询
微信咨询
199 6386 0417
扫码添加客服

用yshell实现文件管理自动化

2022-03-21 13:28:00
高玉浩
原创
1821
摘要:yshell 是悦库网盘系统的全平台(Windows、MAC、Linux) CLI客户端,它允许您使用命令行方式上传/下载文件,像操作本地文件一样使用命令行对网盘中的文件进行删除、移动、复制、重命名等操作。因此您可以使用window bat、linux sh、Python、NodeJS等脚本实现对网盘文件自动化管理,因此您也可以在Linux命令行模式下直接操作悦库网盘中的文件。

什么是yshell ?

      yshell 是悦库网盘系统的全平台(Windows、MAC、Linux) CLI客户端,它允许您使用命令行方式上传/下载文件,像操作本地文件一样使用命令行对网盘中的文件进行删除、移动、复制、重命名等操作。因此您可以使用window bat、linux sh、Python、NodeJS等脚本实现对网盘文件自动化管理,因此您也可以在Linux命令行模式下直接操作悦库网盘中的文件。

为什么要发明yshell ?

      悦库团队一直提倡以自动化方式解决公司内部高度重复和一致性的工作,让团队成员的宝贵时间能够充分释放到技术创新和业务实施中。在之前,我们每次发版前需要手动上传包,还要刷新CDN URL以使新包生效,每次发版前问题又比较多,经常需要连续替换多次发布包,费时费力无聊至极,完成后还要归档发布包,结果这个事情经常被忘记~~
      我们想做一些有趣的事情,于是写了一些脚本,实现了自动发布和归档,驾驭机器替我们干活感觉棒极了。后来作为持续交付系统的一部分,这些脚本被集成到Jenkins中,实现了自动发布流水线。了解详情点击《持续交付加速悦库产品迭代》。
      但是...
      我们想将发布包归档到悦库内盘中,这样就不需要每次远程登录服务器取包,直接从悦库网盘中下载,也不用担心文件会丢失。
      我们还想将每日构建包也归档到悦库内盘中,这样测试人员可以很方便的从悦库内盘中下载测试包。
      我们需要更加规范的自动化归档文件命名。
      我们还需要定期的清理老去的每日构建包,避免硬盘爆满...
      实现这些需求需要悦库提供命令行接口,这样我们可以自己写一些脚本将文件自动归档到悦库网盘中!
      是的,让聪明的人,用命令行实现自动化的文件操作,工作轻松有趣,有更多时间享受精彩生活,是我们发明yshell的初衷。

几乎没有学习成本

      为了最大程度降低学习成本,yshell的文件操作将兼容Linux标准命令行,这样初学者在完成账号密码的配置后就可以像使用命令行操作Linux本地文件一样操作悦库网盘中的文件,以下举几个例子:
      1. 帮助
ysh --help
      2. 配置网盘的账号密码,并保存到本地
ysh user --name "test" --password "666666" --save
      3. 列出文件
ysh ls /我的空间/文档
      4. 创建文件夹,将本地文件上传到网盘路径下
ysh mkdir /我的空间/文档/测试/ ysh put ~/test.txt /我的空间/文档/测试/test.txt
      5. 移动文件
ysh mv /我的空间/文档/测试/test.txt /协同空间/AVC项目/帮助文档/
      6. 下载网盘文件到本地
sh get /我的空间/文档/测试/test.txt ~/文档/
      7. 删除文件
ysh del /协同空间/AVC项目/帮助文档/test.txt
      通过以上例子可以看出,yshell命令行语法简单而熟悉~

没有什么能够阻挡,你对自由的向往

      悦库网盘正在努力向全平台客户端推进,覆盖PC、手机、平板等设备,使任意一端都能友好的访问和管理文件,但这些客户端都是面向普通业务型用户。yshell是面向运维和技术型用户的客户端,通过与脚本的结合,可以实现自动化的访问并控制网盘文件,实现自己的管理规则。

      例如我们之前的一个大型工程公司的客户需求:

“我们每个工程都有100多份文件材料需要收集,希望定时检测工程目录中的文件,确认收集者都已经提交文件,如果没有提交或文件命名不符合规定就通知他。现在是人工定期检查目录列表,费时费力无聊至极~“。

      类似这种需求如果在业务层面只能通过我们定制来完成,需要设计人机交互,且对现有产品功能有一定的侵入,因为其他用户并不需要这个功能。通过yshell+python ,一个普通的运维技术人员,只需几个小时就能完成这样的检查规则编写,然后设置定时任务,定时运行检查。这样企业就有了自己制定一些简单的文件管理规则的能力,随着业务的变化,自行修改规则即可,省去大量重复单一的人工文件操作,提高工作效率。
发表评论
评论通过审核后显示。
联系我们
联系人: 高先生
电话: 19963860417
Email: service@ydisk.cn
QQ: 480247680
微信: 19963860417
地址: 青岛市黄岛区井冈山路157号中南金石国际广场A座3202室