第一次接触到 lsof 命令, 是因为偶然间发现 netstat 命令已经落伍了(与此同时, 还发现了 ss 命令, 详见另一篇文章: netstat/ss 使用对比 );
使用之后, 发现 lsof 被人称为神器
, 还是有一定道理的; 在任何资源都被抽象为文件
的 linux 中, 一个面向文件
的管理工具, 自然辖域辽阔, 神通广大, 再加上与其他命令的巧妙组合, 更如虎添翼, 在工作实践中独当一面;
本文参考了一些实用资料, 结合自己的经验, 对 lsof 命令的使用略作整理;
希尔的博客
兰之猗猗,扬扬其香。不采而佩,于兰何伤?
-
-
maven-assembly-plugin 使用总结
本文在 Apache Maven 的官方文档上, 结合自己的一些项目经历: 在 Apache Spark 中使用 springframework 的一次实践, 总结了一些 assembly 插件的使用方式和一些注意事项, 以作备忘;
另外, 由于 assembly 的 核心配置文件中可配置项种类繁多, 为了体现直观性, 文本直接在一段 ‘丰富而典型’ 的配置文件 case 上, 以注释的形式作为每个配置项的释义; -
cli 控制字符
cli 控制字符是终端操作中非常实用, 也极其频繁使用的快捷键; 使用得好可以加快敲命令的速度, 提升敲命令的准确性, 为工作带来极大便利; 同时, 这也是我们对 linux 爱不释手, 难以回到 windows 的原因之一;
另外, 很多 cli 控制字符本质上是向 linux 或进程发送特定的信号, 关于 linux 信号的介绍, 本站有另外一篇文章: linux signals 总体认识;
本文总结一些常用的 cli 控制字符的使用及技巧; -
sed 命令整理
stream editor: 流式文本编辑器;
sed 命令的侧重点在于对文本的编辑; -
bash 条件判断全梳理
本文基于 GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
-
JsonUtil 类 cheat sheet
在日常工作中, json 的序列化/反序列化 是最频繁使用的动作; 拥有一个封装良好的 json 工具包能极大得提高工作效率;
本文的目的是总结日常工作经验, 并将其作为一个 cheat sheet, 在某些项目环境中, 方便快速获取;
jackson 是 java 世界里主流的 json 序列化/反序列化 框架, 本文所涉及的 json 工具类正是基于 jackson 实现的; -
git 忽略文件的特殊场景
git 忽略文件, 其实有两种场景: 永久忽略 与 临时忽略;
使用.gitignore
在最刚开始时永久忽略指定文件是最常见的处理, 但是偶尔也会遇到特殊情况:
1.一时疏忽, 将本该忽略的文件提交追踪了;
2.需要临时忽略某指定文件, 一段时间后再继续追踪;
本文将讨论以上两种情况下的 git 处理; -
guava 源码学习: ListeningExecutorService 类族
带有 listenable 回调功能的 guava 线程池是
com.google.common.util.concurrent
包里十分重要的概念, 它们实现了任务执行完异步回调指定逻辑的功能, 在很大程度上解决了 java 原生组件 Future / FutureTask 阻塞获取结果的尴尬, 在生产实践中有着广泛的应用;