流程自动化RPA,Power Automate Desktop系列 - 构建VuePress文档中心脚手架
一、背景
笔者曾基于VuePress搭建过一个文档中心,但是在实现在线管理功能之前,很多时候,新建文档需要手动处理很多数据,看有没有可能实现一个脚手架来处理这些问题,所谓脚手架,就是进行文档初始化的一些手工活。

二、创建流任务
创建名为VuePress文档中心脚手架的流任务。
三、添加主流程
因为考虑到脚手架要处理不同类型的任务,我们最好把不同任务拆解成子流程,在主流程里面通过选择来调度子流程,大概的思路是这样。
3.1 设置文档中心目录位置SettingProjectDir
1. 显示选择文件夹对话框,弹窗交互选择当前文档中心所在的文件夹,我们用名为CurrentProjectDir变量来存储它,如果是常用位置,我们还可以设置默认值。

3.2 设置VuePress文档中心约定结构SettingProjectStruct
1. 获取文件夹中子文件夹,从CurrentProjectDir文件夹中获取其子文件夹,并且筛选出多语言特征的,结果存储在变量ProjectLanguageDirs中。
*-*

2. 创建新列表,列表变量为Languages

3. For-Each,遍历ProjectLanguageDirs数据,每项的变量为ProjectLanguageDir
%ProjectLanguageDirs%

4. 拆分文本,通过自定义分隔符\来拆分ProjectLanguageDir,结果存到变量SplitLanguageDirs
\

5. 设置变量,变量名为LanguageDir,提取SplitLanguageDirs的最后一项就可以了。
%SplitLanguageDirs[SplitLanguageDirs.Count - 1]%

6. 将项添加到列表,将LanguageDir结果添加到列表变量Languages中。
%LanguageDir%
%Languages%

7. 显示从列表中选择对话框,对话框标题为选择文档中心语言目录,选择数据来源为Languages结果集合,选择后的变量名CurrentLanguage,用来存储文档中心的当前的语言路径。
%Languages%

8. 设置变量,变量名CurrentLanguageDir来拼装选择后的多语言目录。
%CurrentProjectDir%\%CurrentLanguage%

9. 获取文件夹中子文件夹,从CurrentLanguageDir文件夹中获取其子文件夹,结果存储在变量ProjectCategoryDirs中,得到所有的分类文件夹。
*

10. 创建新列表,列表变量为Categorys

11. For-Each,遍历ProjectCategoryDirs数据,每项的变量为ProjectCategoryDir
%ProjectCategoryDirs%

12. 拆分文本,通过自定义分隔符\来拆分ProjectCategoryDir,结果存到变量SplitCategoryDirs
%ProjectCategoryDir%

13. 设置变量,变量名为CategoryDir,提取SplitCategoryDirs的最后一项就可以了。
%SplitCategoryDirs[SplitCategoryDirs.Count - 1]%

14. 将项添加到列表,将CategoryDir结果添加到列表变量Categorys中。
%CategoryDir%
Categorys

15. 显示从列表中选择对话框,对话框标题为选择文档中心分类目录,选择数据来源为Categorys结果集合,选择后的变量名CurrentCategory,用来存储文档中心的当前的分类路径。
%Categorys%

16. 设置变量,变量名CurrentCategoryDir来拼装选择后的分类目录。
%CurrentProjectDir%\%CurrentLanguage%\%CurrentCategory%

17. 获取文件夹中子文件夹,从CurrentCategoryDir文件夹中获取其子文件夹,结果存储在变量ProjectSolutionDirs中,得到所有的方案文件夹。
*

18. 创建新列表,列表变量为Solutions

19. For-Each,遍历ProjectSolutionDirs数据,每项的变量为ProjectSolutionDir

20. 拆分文本,通过自定义分隔符\来拆分ProjectSolutionDir,结果存到变量SplitSolutionDirs

21. 设置变量,变量名为SolutionDir,提取SplitSolutionDirs的最后一项就可以了。
%SplitSolutionDirs[SplitSolutionDirs.Count - 1]%

22. 将项添加到列表,将SolutionDir结果添加到列表变量Solutions中。

23. 显示从列表中选择对话框,对话框标题为选择文档中心方案目录,选择数据来源为Solutions结果集合,选择后的变量名CurrentSolution,用来存储文档中心的当前的方案路径。
%Solutions%

24. 设置变量,变量名CurrentSolutionDir来拼装选择后的分类目录。
%CurrentProjectDir%\%CurrentLanguage%\%CurrentCategory%\%CurrentSolution%

流程自动化RPA,Power Automate Desktop系列 - 构建VuePress文档中心脚手架的更多相关文章
- 流程自动化RPA,Power Automate Desktop系列 - 不讲武德的Windows10内置应用
简介 Power Automate Desktop 扩展Power Automate中的现有机器人流程自动化(RPA)功能,并使您能够自动化所有重复的桌面流程. 使用预生成的拖放操作或记录您自己的桌面 ...
- 流程自动化RPA,Power Automate Desktop系列 - 创建WPF程序安装包及升级包
一.背景 之前写过的几个WPF小工具,每次发布都需要给它打安装包和升级包,涉及到一些系列繁琐的手工操作,有了Power Automate Desktop,于是便寻思着能不能做成一个自动化的流来使用. ...
- 流程自动化RPA,Power Automate Desktop系列 - DotNet Core打包并发布Nuget Package
一.背景 DotNet Core通常基于Nuget来实现包管理,如果你想要把自己的实现共享给其他人,通常我们需要把本地项目打包好,然后发布到对应的Nuget Server上,以便于其他人可以查找.安装 ...
- 流程自动化RPA,Power Automate Desktop系列 - 批量备份Git仓库做好灾备
一.背景 打个比如,你在Github上的代码库需要批量的定时备案到本地的Gitlab上,以便Github不能访问时,可以继续编写,这时候我们可以基于Power Automate Desktop来实现一 ...
- 流程自动化RPA,Power Automate Desktop系列 - 发布文档中心
一.背景 内网中有一个基于VuePress搭建的静态文档中心,但是每次修改后都需要重新Build一次才行,之前都是手动执行命令,现在可以基于Power Automate Desktop来创建任务了. ...
- Spring Boot中使用Swagger2构建API文档
程序员都很希望别人能写技术文档,自己却很不愿意写文档.因为接口数量繁多,并且充满业务细节,写文档需要花大量的时间去处理格式排版,代码修改后还需要同步修改文档,经常因为项目时间紧等原因导致文档滞后于代码 ...
- springboot+mybatis-puls利用swagger构建api文档
项目开发常采用前后端分离的方式.前后端通过API进行交互,在Swagger UI中,前后端人员能够直观预览并且测试API,方便前后端人员同步开发. 在SpringBoot中集成swagger,步骤如下 ...
- 基于 Python 官方 GitHub 构建 Python 文档
最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...
- springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验--异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档---jpa访问数据库及page进行分页---整合redis---定时任务
springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验-- 异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档 ...
随机推荐
- 13.API基础
1.API 1.1 API概述-帮助文档的使用 什么是API API (Application Programming Interface) :应用程序编程接口 java中的API 指的就是 JDK ...
- Linux USB ECM Gadget 驱动介绍
1 USB ECM介绍 USB ECM,属于USB-IF定义的CDC(Communication Device Class)下的一个子类:Ethernet Networking Control Mo ...
- [Java] Git
版本控制 VCS(Version Control System):版本控制系统 主要功能:版本控制.主动提交.中央仓库 中央仓库功能:保存版本历史.同步团队代码 DVCS(Distributed VC ...
- 029. Python多态介绍
多态:不同的子类对象,调用相同的父类方法,产生不同的结果 继承 重写 在不改变原有代码的前提下,实现了不同的效果 class Soldier(): # 攻击 def attack(self): pas ...
- Centos7挂载windows共享目录
将windows的共享目录挂载到Centos7 查看是否有mount.cifs命令,如果没有,在线安装 [root@dropbox-bak01 ~]# yum install cifs-utils - ...
- UEFI和Legacy兼容启动U盘制作
应用场景 自己有一个可启动移动硬盘,是属于老式的BIOS启动方式,最近换了新电脑,因为电脑只支持uefi的启动方式,所以决心为移动硬盘增加uefi启动支持,如何将一个只支持BIOS启动(或者 Lega ...
- 使用python实现钉钉告警通知功能
前言:日常工作中告警通知是必不可少的,一般会使用邮件.钉钉.企业微信等,今天分享一下使用python实现钉钉告警 一. 钉钉机器人创建 登录钉钉客户端,创建一个群,把需要收到报警信息的人员都拉到这个群 ...
- mysql 多字段联合唯一索引
6个字段组成联合唯一索引 索引名称code_level_metric_type_week_year sql语句联合索引 CREATE UNIQUE INDEX code_level_metric_ty ...
- 多尺度目标检测 Multiscale Object Detection
多尺度目标检测 Multiscale Object Detection 我们在输入图像的每个像素上生成多个锚框.这些定位框用于对输入图像的不同区域进行采样.但是,如果锚定框是以图像的每个像素为中心生成 ...
- httprunner的简介、httprunner做接口测试入门知识,使用httprunner模拟get请求及post请求
一.httprunner的简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种 ...