中国领先的IT技术网站
|
|

每个开发人员应该知道的10个Linux命令

作为一名软件工程师,学习Linux是我所做的最好投资。因为Linux是一个用户必须理解和维护的系统,所以日常体验就像向水坑加水滴一样。时间一长,水坑就会成为湖泊,甚至是海洋。所以我们必须杜微慎防。

作者:小峰翻译来源:码农网|2017-10-11 13:20

沙龙活动 | 去哪儿、陌陌、ThoughtWorks在自动化运维中的实践!10.28不见不散!


作为一名软件工程师,学习Linux是我所做的最好投资。因为Linux是一个用户必须理解和维护的系统,所以日常体验就像向水坑加水滴一样。时间一长,水坑就会成为湖泊,甚至是海洋。所以我们必须杜微慎防。

今天,我作为一名30多岁的工程师,仍然受益于我几年前机缘巧合学到的一大堆知识,在我还是一个具有雄心壮志的初学者的时候。在另一篇博客中,我已经更详细地解释了为什么Linux对于软件开发人员来说是一个更加务实的选择。

在这篇博文中,我将分享一些不太受欢迎但非常有用的Linux命令,我个人极力推荐。如果你是在Macbook上工作,那也没关系,因为我提到的大部分命令也存在于OSX系统中。

每个开发人员应该知道的10个Linux命令

10.file

返回给定文件的信息。例如,你可以输出图像的尺寸信息:

  1. file logo.png 

返回:

  1. > PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced 

9.iotop,powertop,nethogs

你怎么监控Linux系统中正在发生的情况?这三个命令是你的救星:

  • iotop:通过磁盘写入对进程进行排序,并显示程序写入磁盘的次数和频率。
  • powertop:通过能量消耗列出流程。当你在外面,在某个地方你不能为笔记本电脑充电的地方时,这是一个至关重要的命令。
  • nethogs:通过网络流量列出进程。

8.tee

它会分割程序的输出,从而可以打印和保存。例如,添加一个新的条目到hosts文件;

  1. echo "127.0.0.1 foobar" | sudo tee -a /etc/hosts 

7.pidof,kill和pkill

这三个重要的命令可以帮助你控制系统中的运行程序。

pidof打印出正在运行的程序的进程ID。例如,以下命令将输出nginx的进程ID:

  1. pidof nginx 

你可以通过kill命令杀死nginx:

  1. kill -USR2 $(pidof nginx)' 

pkill是一个快捷命令,可以杀死进程匹配模式:

  1. pkill -f nginx 

6.tmux

如果还没有安装tmux的话,那么你必须安装。Tmux是终端的优秀窗口和会话管理器。

5.tree

以树状格式列出目录的内容。它有整洁的选项,如只显示目录;

  1. tree -d 

4.find

当我们正在数十个文件中寻找特定文件时,这个命令就是救星。我将在这里介绍几个简单的用例。

示例1:列出所有CSS文件(包括子目录):

  1. find . -type f -name "*.css" 

示例2:列出所有CSS或HTML文件:

  1. find . -type f \( -name "*.css" -or -name "*.html" \) 

3.htop

有名的过程监控。它有一个漂亮又多彩的命令行界面。一些有用的键绑定:

  • \过滤器
  • /搜索
  • ,选择排序条件
  • k发送杀死信号
  • u用户过滤结果
  • t打开/关闭树模式
  • -和+ 折叠 / 展开选定的流程树
  • H关闭显示线程

2.chroot

很多人喜欢这个命令,是因为它在给定的目录中打开了一个新的TTY。这意味着,你可以创建一个文件夹,在其中设置一个新的Linux系统,并随时切换到该“子系统”。

是不是很强大?

1.dialog

在命令行上与用户交互的一种非常简单又良好的方式。例如,下面的命令展示了一个不错的输入框:

  1. dialog --title "Oh hey" --inputbox "Howdy?" 8 55 

它既存在于Linux,也存在于OSX系统上,并支持许多其他类型的对话框;消息框,菜单,确认,进度条…我为Happy Hacking Linux编写的安装向导就是用这个令人惊叹的命令制作的!

【编辑推荐】

  1. 红帽计划把 .NET Core 2.0 添加到其 Linux 和云端产品中
  2. 颜值即正义,超好用的 Linux 桌面个性化工具推荐
  3. 微软和 Canonical 合作构建定制 Linux 内核
  4. 关于 Linux 你可能不是非常了解的七件事
  5. 进入 Linux 桌面之窗
【责任编辑:未丽燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

非常网管——网络应用

在网络应用越来越复杂的今天,传统的网络应用已经不能满足企业和用户的需要,这就对网络管理员、信息管理部门提出了更高的要求。本书介绍了...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× Python最火的编程语言