cli着色剂
clicol的Python项目详细描述
cli着色器
此项目将为默认情况下不着色cli的设备的命令行界面的输出着色。目标是简化故障排除并使输出更美观。
安装
您将需要Python2.6+和pexpect
应安装telnet和/或ssh
我建议安装virtualenv并将clicol安装到该虚拟环境中:
pip install virtualenv
virtualenv \~/mypython
source \~/mypython/bin/activate
pip install clicol
- 或者(在提取git源之后)
pip install clicol-xxxx.zip
获取clicol源:
git clone https://github.com/realvitya/clicol \~/clicol
cd \~/clicol
复制 clicol.cfg转到您的$home目录并根据您的需要进行修改
用法
运行脚本clicol-telnet
或clicol-ssh
,并为telnet/ssh指定参数。
clicol可以在cygwin中的windows上运行。如果要使用SecureCRT,必须在cygwin中启用sshd并连接到本地主机。不必是桌面上的管理员,就可以正常工作。必须绑定到本地主机并使用端口号1024。
默认情况下,clicol将使用所有颜色集进行着色,此行为可以在配置文件中进行调整。配置文件可以保存在用户目录中,它将优先于默认值。
默认的中断键是ctrl-\
在按下中断键后,您可以选择:
p-暂停着色
q-退出会话
H-打印帮助
t-突出显示regex(在运行时将regex设置为突出显示重要内容)
F1-F12键是各种命令的快捷键。示例在示例配置文件中或尝试帮助“h”键。shift+f1-f8的快捷键只有在您的终端支持时才起作用。对于SecureCRT您可以设置映射键使其工作。(对于Putty我还不知道如何实现它)
注意:如果您安装到virtualenv中,则必须首先激活它:
source~/mypython/bin/activate
考虑使用别名。基本模板可以在doc文件夹中找到。
你的终端软件应该支持ANSI颜色。Putty/SecureCRT进行测试。我正在开发默认颜色集。如果你使用其他软件,颜色可能会有所不同。
测试
您可以列出所有受支持的匹配器并查看它们的运行情况。这有助于创建匹配器列表并仅对其进行筛选。这样,一个人可以选择首选的匹配者,如果发现他们所有的干扰。运行脚本clicol-test {regex}
用例示例:
列出所有匹配项:
clicol-test ".*"
仅列出BGP匹配者:
clicol-test ".*bgp.*"
仅列出某些匹配者:
clicol-test ".*ipv4|cisco_if_stats|juniper_if"
然后可以在$HOME的clicol.cfg中指定所需的regex,并且只使用这些匹配器。
可以通过运行clicol-file {filename}
脚本测试输出。这将使文本文件着色并转储它。很适合测试。
自定义
可以重写或扩展颜色和正则表达式,以便可以修改默认行为和视图。这可以通过创建以下格式的自定义文件来完成。您可以在此处的默认ini文件中找到示例
ls -l $VIRTUAL_ENV/lib/python2*/site-packages/clicol/ini
自定义颜色
$HOME/clicol_customcolors.ini
此文件用于覆盖扩展当前颜色集。示例:
[colors]
c_blue :\033[94m
自定义颜色表
$HOME/clicol_customct.ini
此文件用于覆盖或扩展颜色的关键字。示例:
[colortable]
#add blinking to high alert color:
highalert = %(c_blink)s%(c_u_lred)s
自定义颜色映射
$HOME/clicol_customcmap.ini
此文件用于重写或扩展重新着色/匹配的规则。 示例:
#disable ipv6 coloring
[common_ipv6]
disabled=1
#alter coloring for 'shutdown'
[common_shut]
#replacement=%(alert)s\1%(default)s
replacement=%(lowalert)s\1%(default)s
您可以测试您的更改:clicol-test common_shut
许可证和版权
clicol获得许可GPLv3版权所有Viktor Kertesz,2017-2019
作者
clicol是维克多·克特兹写的 (vkertesz2[~at~]gmail[/dot]com)。