一个用于监视文件并在它们更改时运行shell命令的命令行工具。
项目描述
Spotter是一个简单的命令行工具,用于监视文件并在它们更改时运行shell命令。指令从文本文件中读取,如果没有给出文件名,Spotter将在当前目录中查找名为.spotter的文件。
用法
spotter [-h] [-v] [-q] [-c] [filename [filename ...]]
- 位置参数
filename:包含要加载的指令的文件列表,默认为[".spotter"]。
- 可选参数
-h,--help:解释命令行选项。
-v,--version:显示当前版本号。
-q,--quiet:命令的输出不会打印,除非它们失败。
-c,--continue:失败的命令不会停止Spotter继续执行。
Spotter也可以作为Python模块运行
python -m spotter ...
指令
所有指令都以下列形式存在
<directive>: <argument> [-> <second argument>]
并非所有指令都接受第二个参数,但所有指令都接受第一个参数。
监视
watch: <pattern> -> <command>
监视指令接受两个参数:<pattern>是Unix风格的文件名模式,而<command>是在匹配该模式的文件创建或更改时运行的shell命令。有关模式匹配的更多信息,请参阅fnmatch库文档。
watch: *.txt -> echo "Text file changed"
可以指定多个监视指令,监视器将继续运行匹配的监视指令,直到其中一个失败(即返回大于0的退出码)或者运行到一个匹配的watch-final指令。
watch: * -> return 1 watch: * -> echo "This command will not run"
可以使用命令行参数--continue来禁用此行为,强制监视器即使在某个指令失败的情况下也要继续处理监视。
Watch-Final
watch-final: <pattern> -> <command>
Watch-Final指令与Watch指令具有完全相同的语法和行为。与Watch指令不同,如果模式匹配且运行了命令,则不会进一步处理监视。
watch-final: *.txt -> echo "No commands will run after this"
启动/停止
start: <command> stop: <command>
可以使用start和stop指令在监视器开始运行和停止运行时运行命令。
start: echo "Started watching files" stop: echo "Stopped watching files"
定义
define: <name> -> <value>
Define指令允许存储值,然后在运行其他指令时包含这些值。filename在监视命令中总是可用的,包含匹配模式的文件的路径。定义通过Python格式规范包含在命令中,并在运行命令时插入,而不是在加载命令时。
define: python_command -> python2.6 watch: *.py -> {python_command} "{filename}"
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
spotter-1.7.1.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f77f90af3c586c3382718a5128f2b6b61c7f8c1b1c8879d42fb1b43b2e900c0c |
|
MD5 | 36043a19a89a87e2c369a2daad6d50f0 |
|
BLAKE2b-256 | 763209b4197063725ab1312f811b63d2efe3fa5f51a3efb13f6c2fab5aa7baf4 |
spotter-1.7.1-py2.py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | be0971d2a0612fe6ac64528f64095ad820ba71762448345a229a60b3cc78daf5 |
|
MD5 | bcd5c88b3bd9303b3122b9e641771cd3 |
|
BLAKE2b-256 | 70135d234d285896287daf4e378d4ccb29ed730a0142019919a4f5b562f588f7 |