#header #idempotent #cli #folder #quick #file #prepending

app mkheaders

用于文件头部预添加的幂等、快速 CLI 应用

1 个不稳定发布

0.1.0 2023年3月1日

#82 in #quick

MIT 协议

10KB
166

简介

mkheaders 是一个用于向文件预添加头部的 CLI 应用。

它是一个幂等应用,这意味着如果您连续运行两次,效果等同于只运行一次:它 不会 添加两个头部。这是相对于常规脚本的一个优点。

此外,它作为一个使用 rayon 的多线程应用程序运行,以提高性能。

它旨在安全使用,并创建一个临时文件,只有在该文件完全填满后才会替换原始文件。因此,理论上,在使用该应用程序时最坏的情况是如果在执行过程中中断,文件夹中可能会留下一些悬挂的临时文件。(在未来,我们将添加对某些信号的响应,以便在可能的情况下进行清理。)

尽管如此,请在使用脚本之前将您的文件置于版本控制之下,并/或进行备份,尤其是因为它仍在开发中。

用法

要递归地向名为 "dir" 的文件夹内的所有文件添加头部,请运行

~$ mkheaders header_file.txt dir -r

要将前面的示例限制为仅所有 .py 文件,请运行

~$ mkheaders header_file.txt dir -r -m ".*.py$"

有关更多信息和使用选项,请运行

~$ mkheaders -h
Idempotent header prepender

Usage: mkheaders.exe [OPTIONS] <HEADER_FILE> <TARGET_FOLDER>

Arguments:
  <HEADER_FILE>    File containing the header
  <TARGET_FOLDER>  Target folder containing files to add header

Options:
  -m, --matching <MATCHING>  Regex to match file names that will be considered for the headers
  -r, --recursive            Recursively runs through the target directory, visiting inner directories
  -d, --delete               Flag for deleting the header if it exists rather than prepending
  -h, --help                 Print help

依赖关系

~5–6.5MB
~119K SLoC