背景

最近面对一个庞大的项目,但是只需要修改某个模块,每次都手搓命令太麻烦了,于是就想着能不能写个脚本来辅助处理这些事情。

解决方案

定制化一键 ESLint,执行文件下载地址:

https://github.com/mazeyqian/go-gin-gee/releases/tag/v1.4.0

基础使用

以下案例以 macOS 为例,其他系统自行替换对应的文件。

案例 1:指定文件 file1.jsfile2.js,使用默认的配置。

#!/bin/bash
./eslint-files-mac-darwin-amd64 -files="file1.js,file2.js"

案例 2:指定文件夹 src/viewssrc/components

#!/bin/bash
./eslint-files-mac-darwin-amd64 -folders="/root/app/src/views,/root/app/src/components"

配合根目录 root 使用指定文件夹:

#!/bin/bash
./eslint-files-mac-darwin-amd64 \
-folders="src/views,src/components" \
-root="/root/app/"

案例 3:指定 ESLint 配置文件 custom.eslintrc.js 和命令 --fix

#!/bin/bash
./eslint-files-mac-darwin-amd64 \
-folders="/root/app/src/views" \
-esConf="custom.eslintrc.js" \
-esCom="--fix"

复杂场景

  1. 指定 ESLint 配置文件 custom.eslintrc.js
  2. 指定附带命令 --fix
  3. 指定文件和文件夹;
  4. 指定文件后缀;
  5. 添加前置和后置执行命令。
#!/bin/bash
./eslint-files-mac-darwin-amd64 \
-files="file1.js,file2.js" \
-folders="src/views,src/components" \
-root="/root/app/" \
-esConf="custom.eslintrc.js" \
-esCom="--fix" \
-ext=".js,.ts,.jsx,.vue,.tsx" \
-befCom="echo 'Starting format';" \
-aftCom="echo 'Format completed';"

参数说明

参数 说明 默认 示例 是否必须
files 指定文件,多个文件用 , 分隔。 - file1.js,file2.js 可选
folders 指定文件夹,多个文件夹用 , 分隔。 - src/views,src/components 可选
esConf 指定 ESLint 配置文件。 - custom.eslintrc.js 可选
esCom 指定附带命令。 - --fix 可选
root 指定根目录,配合 folders 使用。 - /root/app/ 可选
ext 指定文件后缀。 .js .js,.ts,.jsx,.vue 可选
befCom 指定前置执行命令。 - echo 'Starting format'; 可选
aftCom 指定后置执行命令。 - echo 'Format completed'; 可选
filesRang 指定文件范围,统计处理过和未处理的文件。 - /root/app/ 可选

演示效果

项目地址

该脚本使用 Go 语言开发,访问地址:

https://github.com/mazeyqian/go-gin-gee/tree/main/scripts/eslint-files

版权声明

本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/4207.html

(完)

使用脚本整合指定文件/文件夹,执行定制化 ESLint 命令的更多相关文章

  1. 使用Python脚本获取指定格式文件列表的方法

    在Python环境下获取指定后缀文件列表的方式. 来源stackoverflow 这里简单以*.txt的作为例子. 使用glob(推荐) import glob, os os.chdir(" ...

  2. Linux常用命令--文件(夹)查找之find命令

    Linux系统用得越久,就会发现这真的是一个很优秀的系统,各种方便各种实用各种高效率. 晚饭前写一下find命令的笔记. 其实这篇笔记,也是看到一篇外文博客,写得不错,自己拿来练一练,然后才顺便写篇笔 ...

  3. apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件或目录执行权限的设置方法

    apache环境下禁止某文件夹内运行PHP脚本.禁止访问文件或目录执行权限的设置方法   首先我们来看两段对上传目录设置无权限的列子,配置如下: <Directory "要去掉PHP执 ...

  4. shell脚本就是由Shell命令组成的执行文件,将一些命令整合到一个文件中,进行处理业务逻辑,脚本不用编译即可运行。它通过解释器解释运行,所以速度相对来说比较慢。

    shell脚本?在说什么是shell脚本之前,先说说什么是shell. shell是外壳的意思,就是操作系统的外壳.我们可以通过shell命令来操作和控制操作系统,比如Linux中的Shell命令就包 ...

  5. 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)

    说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...

  6. Shell脚本使用汇总整理——文件夹及子文件备份脚本

    Shell脚本使用汇总整理——文件夹及子文件备份脚本 Shell脚本使用的基本知识点汇总详情见连接: https://www.cnblogs.com/lsy-blogs/p/9223477.html ...

  7. matlab中exist 检查变量、脚本、函数、文件夹或类的存在情况

    参考: 1.https://ww2.mathworks.cn/help/matlab/ref/exist.html?searchHighlight=exist&s_tid=doc_srchti ...

  8. 在Linux系统下限制指定目录的大小以及文件/文件夹数量

    背景说明 在Linux操作系统下有时需要限制一个指定文件夹的大小和文件夹内可存储的文件数量,有可能是出于安全的考量或者定制化的配置,这里我们提供了一种方案:用dd创建一个空的img镜像,进行格式化的配 ...

  9. URL 路径长度限制(错误:指定的文件或文件夹名称太长)

    本节讨论 URL 的构成.SharePoint 2010 构建 URL 的方式.URL 的编码和加长以及作为其他 URL 中的参数传递的方式. SharePoint URL 的构成 SharePoin ...

  10. C#项目打开/保存文件夹/指定类型文件,获取路径

    C#项目打开/保存文件夹/指定类型文件,获取路径 转:http://q1q2q363.xiaoxiang.blog.163.com/blog/static/1106963682011722424325 ...

随机推荐

  1. Feign入门介绍

    Feign入门介绍 基本概述 除Feign之外,在Java中经常使用的HTTP客户端组件主要有3个,如下: (1)HttpURLConnection,JDK自带 (2)Apache HttpClien ...

  2. Lucene介绍与使用

    Lucene介绍与使用 原文链接:https://blog.csdn.net/weixin_42633131/article/details/82873731 不选择使用Lucene的6大原因? 原文 ...

  3. 默认形参和关键字实参,收集参数,命名关键字参数,return自定义返回,全局变量和局部变量,函数名的使用---day10

    1.函数定义处(默认形参在函数的定义) 1.1.函数的调用处(关键字实参在函数的调用处) 2.收集参数 (1)收集参数: (1) 普通收集参数 在参数的前面加一个*,代表的是普通收集参数 作用:收集多 ...

  4. React 中 Ref 引用

    不要因为别人的评价而改变自己的想法,因为你的生活是你自己的. 1. React 中 Ref 的应用 1.1 给标签设置 ref 给标签设置 ref,ref="username", ...

  5. Nebula Graph 源码解读系列 | Vol.03 Planner 的实现

    上篇我们讲到 Validator 会将由 Parser 生成的抽象语法树(AST)转化为执行计划,这次,我们来讲下执行计划是如何生成的. 概述 Planner 是执行计划(Execution Plan ...

  6. Java 开发人员调度软件项目 (java基础编程总结项目)+javaBean+测试代码+数组知识+数据结构+继承+多态+封装+自定义异常,异常处理+构造器知识+重载+重写+接口+实现接口+关键字使用(static +equalsIgnoreCase+fianl+instanceof判断类型)+向下转型与向上转型

    /** * * @Description Java 开发人员调度软件项目 (java基础编程总结项目) * +javaBean+测试代码+数组知识+数据结构+继承+多态+封装+自定义异常,异常处理 * ...

  7. nginx设置访问账号密码

    第一:为kibana加上了用户登陆访问 第二:不暴露服务器上5601端口,只开放80端口即可.这对服务器的安全也是一个很大的保护. 接下来我们就开始配置nginx与kibana. 一.配置nginx ...

  8. (三)Git 学习之分支操作

    一.分支简介 1.1 Git 分支初探 几乎所有的版本控制系统都会以某种形式支持分支. 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线. 假设你准备开发一个新功能,但是需要两周时 ...

  9. vscode 当做记事本,用任务 tasks 自动提交git - ctrl shift B

    vscode 当做记事本,用任务 tasks 自动提交git - ctrl shift B 起因 开始用的joplin 本地记事本挺好,唯一缺点不能同步. 用了一下,发现markdown是两栏的,变成 ...

  10. Neural Dynamics on Complex Networks-KDD20

    一.摘要 学习复杂网络上的连续时间动态对于理解.预测和控制科学和工程中的复杂系统至关重要.然而,由于高维系统结构中的组合复杂性.它们难以捉摸的连续时间非线性动力学以及它们的结构-动力学依赖性,使得这项 ...