美文网首页
每个开发人员应该知道的10个Linux命令

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

作者: 芜湖达内科技 | 来源:发表于2018-08-28 11:37 被阅读0次

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

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

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

    10.file

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

    file logo.png

    返回:

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

    9.iotop,powertop,nethogs

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

    iotop:通过磁盘写入对进程进行排序,并显示程序写入磁盘的次数和频率。

    powertop:通过能量消耗列出流程。当你在外面,在某个地方你不能为笔记本电脑充电的地方时,这是一个至关重要的命令。

    nethogs:通过网络流量列出进程。

    8.tee

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

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

    7.pidof,kill和pkill

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

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

    pidof nginx

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

    kill -USR2 $(pidof nginx)'

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

    pkill -f nginx

    6.tmux

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

    5.tree

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

    tree -d

    4.find

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

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

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

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

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

    3.htop

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

    \过滤器

    /搜索

    ,选择排序条件

    k发送杀死信号

    u用户过滤结果

    t打开/关闭树模式

    -和+ 折叠 / 展开选定的流程树

    H关闭显示线程

    2.chroot

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

    是不是很强大?

    1.dialog

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

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

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

    免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

    相关文章

      网友评论

          本文标题:每个开发人员应该知道的10个Linux命令

          本文链接:https://www.haomeiwen.com/subject/hpyfwftx.html