#execute-command #directories #command-line-tool #file #subdirectories #across #multiple

bin+lib loop_cmd

一个用于跨多个目录执行命令的命令行工具

1 个不稳定版本

0.1.16 2024 年 7 月 25 日

531文件系统

Download history 90/week @ 2024-07-19 44/week @ 2024-07-26 2/week @ 2024-08-02

136 每月下载量

MIT 许可证

27KB
592

loop / loop_cmd

loop 是一个简单但强大的命令行工具,允许您在多个目录中同时执行命令。它旨在简化跨多个项目或子目录的批处理操作,对于管理复杂项目结构的开发者来说是一个必不可少的工具。

特性

  • 在子目录中执行命令
  • 包含或排除特定目录
  • 使用模式来过滤目录
  • 初始化配置文件

安装

您可以使用以下命令安装 loop

curl -fsSL https://raw.githubusercontent.com/mateodelnorte/loop_cmd/main/install.sh | sh

这将下载并安装 loop,以便它可以从您的 PATH 中作为命令使用。

用法

基本用法

在所有直接子目录中执行命令

loop "git status"

包含特定目录

仅在指定的目录中执行命令

loop "npm install" --include dir1 dir2

排除目录

在除指定的目录之外的所有子目录中执行命令

loop "cargo build" --exclude target node_modules

使用模式

包含匹配模式的目录

loop "yarn test" --include-pattern "app-"

排除匹配模式的目录

loop "make clean" --exclude-pattern "-old"

初始化配置

在您的当前目录中创建一个 .looprc 配置文件

loop --init

上述操作将在您的当前目录中创建一个类似于以下的 .looprc 文件

{
  "ignore": [
    ".git"
  ]
}

此文件可用于设置 loop 命令的默认选项。例如,上述文件将自动将 --ignore .git .vagrant .vscode target 应用到在包含该文件的目录中运行的 loop 命令。

配置

您可以在当前目录中创建一个 .looprc 文件来设置默认选项。使用 loop --init 创建模板配置文件。

示例

  1. 更新所有 Git 仓库
loop "git pull origin main"
  1. 在所有 JavaScript 项目中运行测试
loop "npm test" --include-pattern "*-js"
  1. 清理 C++ 项目的构建工件
loop "make clean" --exclude build node_modules
  1. 在 Python 项目中更新依赖项
loop "pip install -r requirements.txt --upgrade" --include-pattern "py-*"

贡献

欢迎贡献!请随意提交一个Pull Request。

许可

MIT 许可证

依赖项

~4–13MB
~144K SLoC