霸气!开源项目名字就叫BAT,具有语法高亮的Cat类命令
(给机器学习算法与Python学习加星标,提升AI技能)
开源最前线(ID:OpenSourceTop) 项目地址:https://github.com/sharkdp/bat
在类Unix系统中,“ cat”命令用于打印和连接文件。使用cat命令,我们可以将文件的内容打印到标准输出中,将多个文件合成为一个目标文件,然后将几个文件附加到目标文件中。
近日,我偶然发现了一个名为“ Bat”的实用程序,一听这名字是不是就觉得有点高端大气上档次。
其实,它是cat命令的克隆,有很多很酷的功能,例如语法高亮,git集成和自动分页等。目前,bat在Github上标星21.7K,累计分支463(Github地址:https://github.com/sharkdp/bat)
功能特性
语法高亮显示
bat支持大量编程和markup语言的语法高亮显示:
Git集成
bat与git沟通,显示关于修改的索引 (参见左侧栏) :
自动分页
当文件的输出对于屏幕来说太大的时候,bat 命令自动将自己的输出内容传输到 less 命令中,所以你可以一页一页的查看输出内容。
如何使用bat
Bat可以直接在终端显示单个文件:
> bat README.md
一次显示多个文件:
> bat src/*.rs
从stdin读取,自动确定语法,通常通过诸如shebang来确定#!/bin/sh:
> curl -s https://sh.rustup.rs | bat
从标准输入中读取,明确指定语言:
> yaml2json .travis.yml | json_pp | bat -l json
高亮无法输出的字符:
> bat -A /etc/hosts
作为cat的替代品:
bat > note.md # quickly create a new file
bat header.md content.md footer.md > document.md
bat -n main.rs # show line numbers (only)
bat f - g # output f , then stdin, then g .
关于bat的安装方式也有很多种,你可以在Arch Linux的默认软件源中获取,在 Debian、Ubuntu、Linux Mint等系统中,从其发布页面下载 .deb 文件,然后用通过指定命令安装。如果是其他系统你也可以从软件源编译安装,具体查看项目说明详情。
最后附上中文翻译的bat项目地址:https://github.com/chinanf-boy/bat-zh
- 通用日志
- 数据包络分析教程
- 用JAVA的DEA算法衡量社交媒体页面的流行度
- 如何构建智能反垃圾邮件的WordPress插件
- 【深入研究】使用RNN预测股票价格系列一
- 【深入研究】使用RNN预测股票价格系列二
- 教你用一行Python代码实现并行(附代码)
- 在美国国会图书馆标题表的SKOS上运行Apache Spark GraphX算法
- 【精选】破解波动性突破实盘系统
- 从程序员的角度看神经网络的激活功能
- 在线矩阵微积分工具,可以生成 Python/Latex 代码哦!
- 机器学习应用区块链系列(一)——如何开发一套自己的智能合约系统
- 使用Botkit和Rasa NLU构建智能聊天机器人
- 【量化投资】缠论面面观(附Python源码)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- JQ俄罗斯方块儿
- CROSS-ENV不同环境配置
- AA.Dapper升级了
- 放弃手中Docker拥抱下一代容器管理工具Podman
- 个人博客搭建
- leetcode哈希表之两数之和
- Spring boot 的彩色日志
- 一位Android程序员入坑Flutter后整理出一份超详细的学习笔记
- Python批量获取并保存手机号归属地和运营商的示例
- Qt音视频开发31-Onvif抓拍图片
- 突击并发编程JUC系列-ReentrantLock
- 【腾讯云】记一次搭建云服务器
- 前端:如何让background背景图片进行CSS自适应
- 为什么Rust的println!不会发生所有权转移?
- 【译文】Rust futures: async fn中的thread::sleep和阻塞调用