五款最值得日常使用的命令行应用

命令行应用很多时候可以提升我们的工作效率,这里给大家推荐4款常见好用的命令行应用,希望对大家有所帮助。

vim

大名鼎鼎的命令行编辑器,有时间的同学都可以尝试一下。

说起来比较惭愧,当初学习vim的原因有两个。第一个是十多年前的室友表示vim这种工具的学习成本底,因为学会以后键位几十年不变,学一次用终生,性价比极高,尽管入门的时候学习曲线非常的陡峭,甚至有点反直觉。第二个理由是学习vim可以让我比较方便的在线上环境改代码,是的,你没看错,很多年前我们用php的时候确实做过线上调试和改代码的极限操作。

如今随着运维的规范以及自动化发布的普及,线上改代码这种高危操作应该是被严令禁止了。不过使用vim仍然可以让你在任意机器ssh进远程服务器进行代码的编写和执行。配合上自定义的配置和第三方的插件,vim也是日常代码编辑的一个不错选择。

另外很多编辑器都支持vim键位,比如atom,vscode,这会让你在写代码的时候更有如鱼得水的感觉。

tmux

tmux之前是运维同学的钟意之物,因为该工具可以

  • 分屏,将1个terminal分成多个部分
  • 独立运行session,每个部分都是独立的会话,互不干涉
  • 快照,任意时刻退出terminal,tmux都会保存当前会话,下一次可以无缝恢复

命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session) 。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。
一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。
为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。

Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。
(1)它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。
(2) 它可以让新窗口"接入"已经存在的会话。
(3)它允许每个会话有多个连接窗口,因此可以多人实时共享会话。
(4)它还支持窗口任意的垂直和水平拆分。

tmux对于我来说的典型用法就是

  • 把一个窗口分成几块,小的窗口运行mysql,redis之类的服务
  • 用一个窗口运行主服务,比如python的flask开发服务器
  • 用最大的窗口来运行vim编辑器,做代码的编辑

这样任意时刻我退出ssh,上面的这些服务都会一直运行,下次我再ssh上去的话就可以无缝的继续工作了。

howdoi

大家可能有这样的经验,在写代码或者工作的时候经常会需要去各种搜索引擎查找一些信息,比如搜索python如何便利目录,go如何写文件并保存之类的。

如果你的工作环境是标准的桌面环境,也就是有ui的,有浏览器的,这一切似乎不是什么问题。不过如果你只是ssh到服务器上做一些操作,如何在没有ui的环境下进行面向百度或者是google的编程和工作呢?

howdoi这个工具就解决了这个问题。敲命令howdoi,然后再是你需要搜索的内容,howdoi就可以很快的给你具体的信息。比如

$ howdoi format date bash
> DATE=`date +%Y-%m-%d`

再比如

$ howdoi print stack trace python
> import traceback
>
> try:
>     1/0
> except:
>     print '>>> traceback <<<'
>     traceback.print_exc()
>     print '>>> end of traceback <<<'
> traceback.print_exc()

$ howdoi convert mp4 to animated gif
> video=/path/to/video.avi
> outdir=/path/to/output.gif
> mplayer "$video" \
>         -ao null \
>         -ss "00:01:00" \  # starting point
>         -endpos 10 \ # duration in second
>         -vo gif89a:fps=13:output=$outdir \
>         -vf scale=240:180

$ howdoi create tar archive
> tar -cf backup.tar --exclude "www/subf3" www

howdoi的安装方式很简单

pip install howdoi

强烈推荐大家试一试,不需要频繁的从terminal切换到浏览器所带来的工作效率提升是非常明显的。

htop

top相信大家都很熟悉了,htop其实是top的改进版本,是一款更加的简单实用的系统监控工具。

htop可以更加方便的查看cpu和内存的使用率,然后根据各种指标,比如cpu使用率,内存使用率等对进程进行实时排序,最关键的一点是支持鼠标点击排序,指哪打哪的舒适度比top还是好不少的。

ncdu

我的远程服务是最低配版本,这就意味着只有1核cpu,1g内存,以及20g的硬盘,而使用了一段时间以后这20g硬盘就会被占满,而且很难分析出哪些文件占用了大部分的空间。

这时候就需要使用ncdu了,这个工具可以很方便扫描目录,并且按照文件大小进行排序,大目录一目了然,一些缓存路径就可以非常快速的找出来并删除掉了。

posted @ 2021-08-25 11:12  乙醇  阅读(62)  评论(0编辑  收藏  举报

友情链接 虫师的blog  测试教程网  重定向科技  省略