安装:核心工具

主要使用工具
mask

Mac 中的安装方式为

brew install mask

安装:实现默认任务效果所需工具

mask
0.9.0
不支持默认任务,所以暂时使用
Just

Mac 中的安装方式为

brew install just

相关代码为

_default:mask mask-choose

运行方式为

just

安装:交互选择工具

示例代码中使用了交互选择工具 choose-gui,在 Mac 中的安装方式为

brew install choose-gui

安装:文本处理工具

示例代码中使用 awk 处理文本,在 Mac 中的安装方式为

brew install gawk

代码位置

本页面

实现默认任务效果代码

发表

Mask工具使用示例

任务

mask-choose

使用交互选择工具 choose-gui 选择本文档中可以执行的命令

choose_recipe=$(mask mask-SubCommands-visible | /usr/local/opt/choose-gui/bin/choose)
echo "Choose Recipe: ${choose_recipe}"
task=$(echo "${choose_recipe}" | mask mask-SubCommand-names-extractor)
echo "Task : ${task}"
mask "${task}"

mask-SubCommands

提取本文档中的子命令

mask --help | mask mask-SubCommands-extractor

mask-SubCommands-visible

提取本文档中交互选择可见的子命令,描述的开头使用 (hidden) 标记交互选择中不可见的子命令,在 mask-SubCommand-visible-filter 中过滤

mask mask-SubCommands | mask mask-SubCommand-visible-filter

mask-SubCommand-names

本文档中的子命令的名称列表

mask mask-SubCommands | mask mask-SubCommand-names-extractor

mask-SubCommand-visible-names

本文档中交互选择可见的子命令的名称列表

mask mask-SubCommands-visible | mask mask-SubCommand-names-extractor

mask-SubCommands-extractor

(hidden) 从 mask 的帮助中提取子命令的 awk 脚本,在交互选择列表中不可见

{if ("SubCommands" == section){sub(/^[ ]+/, "");print;}
}
{if ("SUBCOMMANDS:" == $0)section = "SubCommands"
}

mask-SubCommand-visible-filter

(hidden) 过滤描述的开头使用 (hidden) 标记交互选择中不可见的子命令的 awk 脚本,在交互选择列表中不可见

{if ("(hidden)" != $2)print;
}

mask-SubCommand-names-extractor

(hidden) 提取子命令名称的 awk 脚本

{print $1;
}

mask-draft-dir

个人本地使用的脚本,读者请忽略

jump cd mask-draft

code

个人本地使用的脚本,读者请忽略

    root_dir=`pwd`code_workspace="${root_dir}/mask.code-workspace"if [ -f "${code_workspace}" ]; thencode "${code_workspace}";elsecode "${root_dir}";fi

`Mask`工具使用示例相关推荐

  1. Java 调用http接口(基于OkHttp的Http工具类方法示例)

    目录 Java 调用http接口(基于OkHttp的Http工具类方法示例) OkHttp3 MAVEN依赖 Http get操作示例 Http Post操作示例 Http 超时控制 工具类示例 Ja ...

  2. Popular MVC框架swagger+knif4j接口文档工具使用示例

    Popular MVC框架swagger接口文档工具使用示例 简介 此项目介绍如何使用popularmvc内置的swagger+knife4j实现简单易用的实时API文档,支持在线调试接口! 此项目只 ...

  3. 鼠标移动方块的mask碰撞检测原理示例程序

    """鼠标移动方块的mask碰撞检测原理示例程序 """ import pygame from pygame.locals import * ...

  4. Python文本预处理:步骤、使用工具及示例

    作者 | Data Monster 译者 | Linstancy 编辑 | 一一 出品 | AI科技大本营(ID:rgznai100) 本文将讨论文本预处理的基本步骤,旨在将文本信息从人类语言转换为机 ...

  5. 【Android 安全】DEX 加密 ( 阶段总结 | 主应用 | 代理 Application | Java 工具 | 代码示例 ) ★

    文章目录 一.主应用 二.代理 Application 解析 1.代理 Application 源码 2.反射对象成员以及方法的工具类 3.压缩解压缩工具类 4.OpenSSL 解密工具类 5.Ope ...

  6. CentOS系统性能工具 sar 示例!

    安装配置 Sysstat 安装 Sysstat 包 ### Ubuntu sudo apt-get install sysstat ### CentOS yum install sysstat ### ...

  7. CentOS上安装Web性能测试工具Siege 示例

    2019独角兽企业重金招聘Python工程师标准>>> 本文记录一次在CentOS上安装Web性能测试工具Siege的步骤,并对安装过程中遇到的问题进行解决~ Siege是什么? S ...

  8. 13种UML简介、工具及示例

    概要 UML(Unified Modeling Language ,统一建模语言或标准建模语言). UML图形有13种,UML规范用来描述建模的概念有,类(对象的).对象.关联.职责.行为.接口.用例 ...

  9. java 在线监测 trace_JDK自带的性能调优监测工具使用示例

    JVM性能调优监控工具jps.jstack.jmap.jhat.jstat位于JDK的bin目录,这些工具短小精悍,常用于线上系统的分析监测. 用来解决如下问题 OutOfMemoryError,分析 ...

最新文章

  1. torch tensor用法
  2. python100个免费实例-Python实例100个(基于最新Python3.7版本)
  3. 天天象棋 残局闯关 第17关
  4. linux删除文件夹提示没找到,Win10中遇到删除文件夹提示找不到该项目的解决过程...
  5. U-BOOT之一:BootLoader 的概念与功能
  6. CF788E:New task
  7. 【Elasticsearch】使用 Elasticsearch Painless 脚本以递归方式遍历 JSON 字段
  8. 腾达A6无线路由器的几种连接模式
  9. UVA11870 Antonyms【并查集】
  10. java kafka spring_Kafka——Spring集成Kafka
  11. CF1040B Shashlik Cooking
  12. Pandas基础学习
  13. 基于C++11的高精度多级时间轮定时器
  14. 一筐鸡蛋 1个1个拿……弱智题
  15. 17家中国初创IT公司的失败史
  16. Xilinx GTX/GTH时钟篇(7系列)
  17. new Date兼容iOS和Android
  18. 计算机毕业设计Java移动垃圾分类车管理平台(源码+系统+mysql数据库+Lw文档)
  19. word文档图片画红线_在Word中巧妙绘制漂亮分割线的方法
  20. My favorite player-Davor Suker

热门文章

  1. jupyter notebook中,对tensorflow运行时经常出现“The kernel appears to have died. It will restart automatically”
  2. 史上最简单的wordpress迁移搬家教程
  3. 用Python修复百年老照片,那些高颜值的父母!
  4. 初识Volley(四)
  5. 内蒙古大学计算机学院 任众,内蒙古大学计算机学院软件学院硕士生导师:白翔宇...
  6. ORC与Parquet压缩分析
  7. Oracle清空表内所有数据
  8. 网络设备解析:中继器、集线器、网桥、交换机、路由器、网关的区别
  9. 网易雷火游戏测试实习一二三四面面经
  10. 1.0.1-Reaper配置导入导出