linux下make命令实现输出高亮的方法

 更新时间:2017年07月14日 11:36:58   作者:爪爪熊大坏蛋  
Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一。管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题。这篇文章主要给大家介绍了关于linux下make命令实现输出高亮的方法,需要的朋友可以参考下。

前言

无论是在linux 还是在Unix环境 中,make都是一个非常重要的编译命令。最近在调试代码,make 输出信息的时候 error 、warning 等信息都是和普通信息一样白色打出来的,和普通信息一样很难区分。每次就要在茫茫多的输出信息中找那个小小的error 才看是哪一行出了问题,有时候运气不好还可能来来回回看好几遍才找到。

这里提供一种解决办法进行相关处理,让make输出的信息不再那么难找。

注意:gcc 在4.9 版本后已经有相关的颜色标记了,直接添加 -fdiagnostics-color=auto 参数即可

对象:公司的编译服务器(debian系,内核 3.2 )

一、改造服务器登录shell

服务器默认登录进去的shell是sh,但是我想使用bash,进行以下操作就可以了:

# chsh
Password: //输入你的密码就
Changing the login shell for jet
Enter the new value, or press ENTER for the default
 Login Shell [/bin/sh]:/bin/bash //回车

关闭shell 再次登录的时候检查是否切换到了bash.。

# echo $SHELL
/bin/bash

这就代表切换成功了。

检查下环境变量。貌似 .bashrc 没有自动执行:

# vim ~/.profile
//添加下面内容
source ~/.bashrc

再次关闭shell后登录,已经成功加载 .bashrc了。

二、真正动手处理make输出

这里处理make输出使用的是一个github上的小程序,地址如下:

github地址:https://github.com/chinaran/color-compile

本地下载地址:http://xiazai.jb51.net/201707/yuanma/color-compile(jb51.net).rar

下载好后放到编译服务器中,进行解压和编译:

unzip color_compile.zip
cd color_compile/
\make
cp color_compile out_color_info ~/program/

因为我没有root权限,所以只有曲线救国,将需要程序直接拷贝到我的program目录中,然后在修改 .bashrc

vim ~/.bashrc
//添加如下内容
export PATH=/home/jet/program/:$PATH
alias arm-openwrt-linux-gcc="color_compile arm-openwrt-linux-gcc"
alias arm-openwrt-linux-g++="color_compile arm-openwrt-linux-g++"
alias make="color_compile make"

然后在生效下环境变量:

source ~/.bashrc

去源代码目录中尝试下输出是否正确,如下图所示:


原谅我大花脸的打马,主要是公司代码,分毫不敢乱搞事,总之,看到有颜色输出就对了。好了,大功告成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • Linux中关于控制进程的命令总结

    Linux中关于控制进程的命令总结

    程序是一组可执行的静态指令集,而进程(process)是一个执行中的程序实例,下面这篇文章主要给大家介绍了Linux中关于控制进程的一些命令,包括Linux如何查看进程、启动进程等常用命令,下面来一起看看吧
    2017-03-03
  • node+Express测试服务器性能

    node+Express测试服务器性能

    这篇文章介绍了使用node+Express测试服务器性能,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • Apache多虚拟主机多站点配置的两种实现方案

    Apache多虚拟主机多站点配置的两种实现方案

    本文介绍了在Apache服务器上配置多虚拟主机的两种方案:基于IP地址的虚拟主机配置和基于域名的虚拟主机配置,详细说明了每个方案的配置步骤,以实现在同一台服务器上托管多个网站的目的,感兴趣的可以了解一下
    2024-09-09
  • linux下open-vswitch安装卸载操作

    linux下open-vswitch安装卸载操作

    这篇文章主要为大家详细介绍了linux下open-vswitch安装卸载的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 单台服务器中利用Apache的VirtualHost如何搭建多个Web站点详解

    单台服务器中利用Apache的VirtualHost如何搭建多个Web站点详解

    这篇文章主要给大家介绍了关于在单台服务器中利用Apache的VirtualHost如何搭建多个Web站点的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09
  • 在Apache服务器中运行CGI程序的方法

    在Apache服务器中运行CGI程序的方法

    这篇文章主要介绍了在Apache服务器中运行CGI程序的方法,文中以Perl脚本作为示例,需要的朋友可以参考下
    2015-07-07
  • linux下通过xinetd服务管理 rsync 实现开机自启动

    linux下通过xinetd服务管理 rsync 实现开机自启动

    这篇文章主要介绍了linux下通过xinetd服务管理 rsync 实现开机自启动的相关资料,需要的朋友可以参考下
    2017-10-10
  • Linux使用sar命令跟踪和记录系统资源利用率

    Linux使用sar命令跟踪和记录系统资源利用率

    sar 命令是 Linux 系统中的一个系统监控工具,由 sysstat 包提供,它可以定期收集系统的各种性能数据,包括CPU利用率、内存使用情况、磁盘I/O活动、网络流量等,本文介绍了如何在 Linux 中使用 sar 命令跟踪和记录系统资源利用率,需要的朋友可以参考下
    2024-07-07
  • Linux命令下crontab命令

    Linux命令下crontab命令

    crontab是一个用来设置、删除或显示供守护进程cron执行的定时任务的命令。下面给大家介绍linux命令下crontab命令,需要的朋友一起看看吧
    2016-11-11
  • Linux命令 移动/复制文件/目录到指定目录下的实现

    Linux命令 移动/复制文件/目录到指定目录下的实现

    这篇文章主要介绍了Linux命令 移动/复制文件/目录到指定目录下的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04

最新评论