你知唔知我系靓仔
命令行生成截图
让命令行截图变得更简单:Termshot 工具推荐
在日常的开发和文档编写中,我们经常需要记录和分享命令行输出。无论是写教程、做演示,还是排查问题,清晰且美观的命令行截图都是必不可少的。但传统的截图工具往往无法完美捕捉命令行的细节,尤其是那些带有ANSI转义码的输出。今天,我要给大家推荐一款专门为命令行设计的截图工具——Termshot。
什么是 Termshot?
Termshot 是一款开源的命令行截图工具,它能捕捉终端的输出并生成类似于用户界面窗口的图像。与常见的代码截图工具(比如 carbon.now.sh、instaco.de 或 codekeep.io/screenshot)不同,Termshot 不是基于编程语言应用语法高亮,而是直接使用程序输出的 ANSI 转义码。这样一来,它就能生成干净、准确的终端输出截图。
为什么选择 Termshot?
1. 精确捕捉终端输出
Termshot 能准确地捕捉终端输出的每一个细节,包括颜色、格式和动态效果。这对于那些依赖于ANSI转义码的命令行工具来说尤为重要。无论是复杂的日志输出,还是交互式的shell会话,Termshot 都能完美呈现。
2. 编辑功能
在生成截图之前,Termshot 提供了一个编辑选项,允许你删除输出中的敏感信息或不需要的内容。这样一来,你在分享截图时会更加灵活和安全。
3. 简单易用
使用 Termshot 非常简单。你只需要在命令前加上 termshot
,它就会自动捕捉并生成截图。比如:
termshot --edit -- tool --apply --force
4. 支持交互式 shell
Termshot 使用伪终端来执行命令,这意味着你可以调用完全交互式的 shell 并捕获整个输出。当你终止 shell 后,Termshot 会自动生成截图。
termshot /bin/zsh
5. 灵活的命令行参数
由于 Termshot 和你的命令都可以有命令行标志,因此建议使用 --
来分隔它们,以避免参数冲突。比如:
termshot --edit -- tool --apply --force
如果你需要将一个命令的输出通过管道传输到另一个命令,则必须在命令行上使用引号来明确这一点:
termshot --show-cmd -- "figlet foobar | lolcat"
注意事项
虽然 Termshot 已经能够解析大部分的 ANSI 序列,但仍有一些命令的输出可能无法正确解析。此外,已知重置光标位置的命令会产生问题。因此,在使用 Termshot 时,建议先进行简单的测试,以确保生成的截图符合预期。
结语
Termshot 是一款功能强大且易于使用的命令行截图工具,它能帮助你轻松捕捉和分享终端输出。无论是开发者、技术作家还是系统管理员,Termshot 都能极大地提升你的工作效率和文档质量。如果你还在为命令行截图而烦恼,不妨试试 Termshot,相信它会给你带来惊喜。
项目地址: Termshot GitHub