1. tmux

Tmux 是一个优秀的终端复用工具.用户可以通过 Tmux 在一个终端内管理多个分离的会话、窗口及面板,对于同时使用多个命令行,或多个任务时非常方便。

# 开启一个新会话执行任务
$ tmux 
# 开启一个新会话执行任务,会话名字叫test
$ tmux new -s test
# 会话放在后台运行,切回原来窗口
$ ctrl +b 松手后再按d
# 查看会话
$ tmux ls 查看会话
# 进入test窗口会话
$ tmux att -t  test
# 删除test窗口会话
$ tmux kill-session -t test
# 终止所有窗口会话
$ tmux kill-server
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

2. jq

jq :是一个轻量级的命令行工具,用于处理 JSON 数据,格式化显示,支持高亮,可以替换python -m json.tool

# 输出原始json数据
$ echo '{"name": "qiexia", "age": "28", "city": "guangzhou"}' | jq
{
  "name": "qiexia",
  "age": "28",
  "city": "guangzhou"
}

# 获取某个 key 的值
$ echo '{"name": "qiexia", "age": "28", "city": "guangzhou"}' | jq .name
"qiexia"

# 获取多个key的值
$ echo '{"name": "qiexia", "age": "28", "city": "guangzhou"}' | jq .name,.age
"qiexia"
"28"

# 获取所有的keys
$ echo '{"name": "qiexia", "age": "28", "city": "guangzhou"}' | jq keys
[
  "age",
  "city",
  "name"
]

# 获取所有values
$ echo '{"name": "qiexia", "age": "28", "city": "guangzhou"}' | jq .[]
"qiexia"
"28"
"guangzhou"

# 获取tests values的第一个元素
$ echo '{"city": "guangzhou", "tests": [{"foobar": "v1"}, {"foobar": "v2"}]}' | jq .tests[0]

{
  "foobar": "v1"
}

# 获取tests values的所有元素
$ echo '{"city": "guangzhou", "tests": [{"foobar": "v1"}, {"foobar": "v2"}]}' | jq '.tests |.[]'
{
  "foobar": "v1"
}
{
  "foobar": "v2"
} 

# 获取tests values的元素中key为foobar的values
$ echo '{"city": "guangzhou", "tests": [{"foobar": "v1"}, {"foobar": "v2"}]}' | jq '.tests |.[].foobar'
"v1"
"v2"
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.

3. glances

glances 是一款用于 Linux、BSD 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。

linux常用提高工作效率工具_性能优化

4. multitail

Multitail是一个用来监控多个文档,多个日志文件的命令。类似于tail命令功能的软件。
tail命令只能在一个终端查看一个文档文件,而Multitail可以在终端打开多个查看窗口。这样可以监控多个日志文件

指明显示多个文件的日志

$ multitail -i file1 -i file2
  • 1.

linux常用提高工作效率工具_性能优化_02

表示竖排窗口显示两个文的日志

$ multitail -s 2 /var/log/lastlog /var/log/messages
  • 1.

linux常用提高工作效率工具_ci_03