1、命令行真的好吗

程序员的使命

维基百科的解释:

命令行界面(英语:command-line interface,缩写:CLI)是在图形用户界面得到普及之前使用最为广泛的用户界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以执行。也有人称之为字符用户界面(CUI)。

也有人这样说:

熟练使用命令行是一种常常被忽视,或被认为难以掌握的技能,但实际上,它会提高你作为工程师的灵活性以及生产力

个人观点:

有看到不同行业的人在评论区各种互撕,那到底用命令行是好还是不好呢..其实我觉得有时候花时间纠结这些问题是没有意义的,你觉得有用就学,不看好它就不看了呗,等哪天你发现它的好了,打心里想学了就去学呗,学习这东西,只要你愿意开始,什么时候都不晚。

任何东西都没有绝对的说法,要看使用的场合,常说水能载舟,它亦能覆舟。

我自己会的命令行也不是很多,但真的打心里羡慕那些把命令行用的很溜的大牛们,也在学习着熟悉大部分命令行,因为我觉得至少现在对我来说,它是极好的。

你是否注意到,在电影中一个“超级黑客”坐在电脑前,从不摸一下鼠标, 就能够在30秒内侵入到超安全的军事计算机中。这是因为电影制片人意识到, 作为人类,本能地知道让计算机圆满完成工作的唯一途径,是用键盘来操纵计算机。

但不得不说不好的地方是

  • 命令行对新手不太友好,所以能否熟练应用命令行算是一个高手和新手能显著拉开效率差距的点。
  • 娱乐的时候不友好,你要打游戏或者要聊天,这个时候就还是图形化界面占上风了,当然对用户来说也美观
  • 看到有人这样说—我就想让照片上妹子脸上的小痘痘消失,怎么用命令行实现呢

好在哪呢?

  • 人生苦短,效率,效率,效率,还是效率
  • 鼠标不适合快速操作,命令行通常比在菜单中点来点去更简单,更容易,更直接。
  • 稳定,可移植性强
  • 开发省心省钱
2、感受下效率

试着玩玩,就能体会到它的效率了

3、基本命令行

4、这些你也要会(举例说明)

5、神奇的top命令

这里选择把top单独介绍(信息量略大)

  • top的用途—作为日常管理工作中最常用也是最重要的Linux 系统监控工具之一,可以动态观察系统进程状况,显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等默认值是每5秒更新一次,按q键可以退出。
  • 在你的终端输入这条命令即可查看$ top
  • 它会出现这些信息(本人电脑举例)

  • 第一行含义解释21:11:46—当前系统时间up 29 min—系统已经运行了29分钟(在这期间系统没有重启过)2users—当前有2个用户登录系统load average: 0.29, 0.28, 0.18—loadaverage—后面的三个数分别是1分钟、5分钟、15分钟的负载情况loadaverage—数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了
  • 第二行含义解释Tasks: 240 total, 1 running, 239 sleeping, 0 stopped, 0 zombie—系统现在共有240个进程,其中处于运行中的有1个,239个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
  • 第三行含义解释2.6 us—用户空间占用CPU的百分比。0.8 sy—内核空间占用CPU的百分比。0.0%ni—改变过优先级的进程占用CPU的百分比96.6 id—空闲CPU百分比0.0 wa—IO等待占用CPU的百分比0.0hi—硬中断(HardwareIRQ)占用CPU的百分比

    0.0si—软中断(SoftwareInterrupts)占用CPU的百分比`

  • 第四行含义解释8081084 total—物理内存总量(80GB)1533752 used—使用中的内存总量(14GB)4966452 free—空闲内存总量(49GB)1580880 buff/cache—缓存的内存量(15G)
  • 第五行含义解释(swap交换分区信息)0 total—交换区总量(0K)0used—使用的交换区总量(0K)0free—空闲交换区总量(0K)5930172 avail Mem—可用内存(59G)
  • 第七行含义解释(各进程(任务)的状态监控)PID—进程idUSER—进程所有者PR—进程优先级NI—nice值。负值表示高优先级,正值表示低优先级VIRT—进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESRES—进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

    SHR—共享内存大小,单位kb

    S—进程状态。D=不可中断的睡眠状态R=运行S=睡眠T=跟踪/停止Z=僵尸进程

    %CPU—上次更新到现在的CPU时间占用百分比

    %MEM—进程使用的物理内存百分比

    TIME+—进程使用的CPU时间总计,单位1/100秒

    COMMAND—进程名称(命令名/命令行)

Linux命令行极简教程的更多相关文章

  1. CentOS安装使用.netcore极简教程(免费提供学习服务器)

    本文目标是指引从未使用过Linux的.Neter,如何在CentOS7上安装.Net Core环境,以及部署.Net Core应用. 仅针对CentOS,其它Linux系统类似,命令环节稍加调整: 需 ...

  2. Asky极简教程:零基础1小时学编程,已更新前8节

    Asky极简架构 开源Asky极简架构.超轻量级.高并发.水平扩展.微服务架构 <Asky极简教程:零基础1小时学编程>开源教程 零基础入门,从零开始全程演示,如何开发一个大型互联网系统, ...

  3. Nginx 极简教程(快速入门)

    作者:dunwu github.com/dunwu/nginx-tutorial 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容聚合 4.  ...

  4. 40个超有趣的Linux命令行彩蛋和游戏

    40个有趣的Linux命令行彩蛋和游戏,让你假装成日理万机的黑客高手.附一键安装脚本,在树莓派和ubuntu云主机上亲测成功,有些还可以在Windows的DOS命令行中运行. 本文配套B站视频:40个 ...

  5. nginx极简教程

    Nginx 极简教程 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx. examples 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快 ...

  6. 自制 os 极简教程1:写一个操作系统有多难

    为什么叫极简教程呢?听我慢慢说 不知道正在阅读本文的你,是否是因为想自己动手写一个操作系统.我觉得可能每个程序员都有个操作系统梦,或许是想亲自动手写出来一个,或许是想彻底吃透操作系统的知识.不论是为了 ...

  7. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  8. [转]12款最佳Linux命令行终端工具

    摘要 “工欲善其事必先利其器”,作为菜鸟,也是从别人那里偷学来的一些东东.今天看到同事用到一个终端命令行工具,觉得自己弱爆了.然后在网上搜了下该工具.发现类似的工具还是挺多的,只是自己不知道罢了. 原 ...

  9. 12款最佳Linux命令行终端工具, 20款优秀的 Linux 终端仿真器

    12款最佳Linux命令行终端工具     如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的 ...

随机推荐

  1. linux 下安装 RZ SZ命令 以及使用

    对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,rz是把win的文件上传到linux上    sz是吧 ...

  2. Fiddler_解决Fiddler查看Post参数中文乱码的问题

    解决Fiddler查看Post参数中文乱码的问题 今天一个同事问我,为什么用Fiddler查看Post的中文参数,是一堆乱码,如下: 需要在注册表中增加一个键值: HKEY_CURRENT_USER\ ...

  3. spring cloud 学习(10) - 利用springfox集成swagger

    对绝大多数程序员而言,写接口文档是一件痛苦的事情,相对文档,他们更愿意写代码.最理想的情况就是:代码即文档!服务开发完成后,部署上去文档就自动生成,没错,这就是springfox + swagger要 ...

  4. Spring 注解学习手札(七) 补遗——@ResponseBody,@RequestBody,@PathVariable(转)

    最近需要做些接口服务,服务协议定为JSON,为了整合在Spring中,一开始确实费了很大的劲,经朋友提醒才发现,SpringMVC已经强悍到如此地步,佩服! 相关参考: Spring 注解学习手札(一 ...

  5. STM32 USART 波特率计算

    The baud rate for the receiver and transmitter (Rx and Tx) are both set to the same value as program ...

  6. 【Unity 3D】碰撞检测

    在unity3d中,能检测碰撞发生的方式有两种, 碰撞器 触发器 概念:     (一)碰撞器是一群组件,它包含了很多种类,比如:Box Collider,Capsule Collider等,这些碰撞 ...

  7. 安装oracle10g“程序异常终止。发生内部错误。请将以下文件提供给oracle技术支持部门

    发生情景:测试环境搭建的是windows 2008 r2 sp1系统 在安装Oracle 10g数据库时发生了错误,现在把解决问题的方法和原因分享给大家. *  安装出现的现象: 输入完密码后下一步时 ...

  8. Android:活动的启动模式

    启动模式一共有四种,分别是 standard .singleTop . singleTask 和 singleInstance , 可 以 在 AndroidManifest.xml 中 通 过 给 ...

  9. Windows Phone本地数据库(SQLCE):10、创建数据库(翻译) (转)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...

  10. 线程中sleep方法和wait方法有什么区别?(转)

    本文转自https://www.cnblogs.com/linkstar/p/6043846.html 线程中sleep方法和wait方法有什么区别?   如果你没有接触过java的多线程,那么多对于 ...