linux命令为什么这么快,为什么这么多Linux用户更喜欢命令行而不是GUI?

为什么这么多 Linux 用户更喜欢 CLI 而非 GUI? 上次我在 Reddit 关注该问题时,遇到了一些有帮助的投稿:

“处于相同的原因我更喜欢谈论指指点点和七嘴八舌。 可以很好的传达并给出很好的反馈。

这不是一团糟,而是富有诗意的精确。 你根本无法在 2 维面板上为每个命令行适配选项。 光想想 GNU 的查找的 GUI 界面就知道有多么疯狂。”

比起使用 CLI 我更常用 GUI 工作,但这是我做最重要的开发任务时的方式。 命令行界面可以说具有一个陡峭的学习曲线,但一旦你掌握它,你就会喜欢上它,因为它将变成第二天性。

以下是我认为许多 Linux 用户更喜欢命令行界面的最普遍的原因。

a3446051766a1b2cdf4a7c542b614fa1.png

1. 更集中注意力

关于 CLI 我最喜欢的是它的无干扰界面。 当然,默认的黑白色在前几次可能有点吓人,一旦你掌握了它,就会得到它的祝福。

在任何时候,界面都只显示当前项目的必要信息,而其它信息都是一些按键。 这样,你就会专注于重要的事上。

2. 更详细

想一想——每个命令行选项都放入 GUI 选项面板中几乎是不可能的。 文本编辑器和 IDE(以及其它复杂的应用)设法在变成期间把各种选项放进工具栏和隐藏布局中, 但随着时间的推移会添加更多的功能选项——当调用时,在后台调用命令。

如果你已经构建了一个 GUI 应用,在你知道每个在应用窗口中看到的选项与在后台运行的命令相关联之前。 实际上,在把功能实现为 GUI 选项之前,首先会对 CLI 方面进行排序。 由于这一事实,CLI 在选项集和可用性方面总是更加详细。

3. 只需较少的存储空间

这个或多或少是一个明智的选择。 基于命令行的应用只需更少的空间,因为他们缺少 GUI 应用具有的“肉体”,不管他们多么轻量。

这意味着如果存储空间对你来说是一个问题,那么你最好使用基于 CLI 的应用而不用担心降低工作效率。 这引发了我的下一个观点:

4. 提高生产力

在无干扰模式下工作已经把生产力提高了一个等级,并且大多数时候只使用键盘这一事实可以改善你的工作流程和精神。

一位开发的朋友曾告诉我,“你工作时碰鼠标的频率越低,你的效率就越高”。 所以,难怪熟练的程序员更喜欢使用基于 CLI 的编辑器,例如:Vim 和 Emacs。

5. 记忆效率更高

使用 CLI 工作比使用 GUI 应用程序更益于记忆,一个好的例子就是 Git。 Git 的 GUI 应用程序具有足够的记忆效率,但直接使用 Git 命令行更加利于对你操作的记忆。

6. 与发行版无关(跨平台)

命令行应用很少使用不同的命令,无论运行在哪个发行版上, 但 GNU/Linux, macOS 和 Windows 平台上的 GUI 应用程序通常不是这种情况, 因为可以重新排列选项以适应平台的 UI 方案。

例如,在 Linux 生态系统中,bash 使用相同的命令。 作为一个系统管理员,你需要做的就是学习 bash 并且你应该能够使用任何其它的 Linux 发行版。

这里还有一些 CLI 吸引许多 Linux 用户的其它原因,包含管道,脚本自动化和整体速度。

无论你使用命令行还是 GUI 应用,我相信你对为什么这么多 Linux 用户更喜欢使用命令行而不是 GUI 应用会有所了解。 在下面的讨论部分与我们分享你的意见。

感想

对于后端工作,我像大部分 Linux 一样比较倾向于使用命令行。

优点(原因)如上所述。

参照

0b1331709591d260c1c78e86d0c51c18.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/563752.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux下golang的编译,golang Linux下编译环境搭建

1、下载golang1.4和1.10源码(1.4以后的版本都用1.4go编译安装,所以先安装1.4)2、解压后我的目录结构是:/opt/xxx/golang|-------gopath //开发工作目录|     |------src       //开发源码|     |------p…

linux数据库怎么import,mysqlimport

mysqlimport命令为mysql数据库服务器提供了一种命令行方式导入数据工具,它从特定格式的文本文件中读取数据插入MySQL数据库表中。常用参数:--columns第一列对应的数据表列名,第二列对应的数据表列名,…定义被导入文件中的每一列对应的数据库表列名--fields-terminat…

linux查看rsync的命令,Linux rsync 命令学习

Rsync命令和cp命令很像,但是功能似乎更加复杂点,主要用来备份数据。看了网上一堆介绍的文章,感觉不是很通俗易懂。下面按照我的理解,做一些笔记:同步方式之前接触过一些同步软件,例如坚果云、百度云盘等等&…

linux远程挽救模式,linux – 如何在远程重启Redhat后进入SSH并进入恢复模式?

我需要进入我的红帽框的恢复模式,该模式在虚拟机上远程运行.我使用RedHat 5 64位企业版.我使用SSH登录到该框.我可以使用restart命令重新启动,但我需要知道我是否能够通过SSH连接它,因为我远程使用它并且无法通过UI登录.真正的问题是,我在根目录上做了一个-R $USER /.我试图将此…

mac os linux 桌面快捷键,Mac之快捷键

接触Mac不久,很多东西都没了解过,对于快捷键完全不熟悉,查了些资料,顺便做下笔记~~~按键符号Shift:⇧Ctrl:⌃Alt(Option):⌥Command:⌘Mac按键符号…

linux 等待进程,Linux 进程等待队列

Linux内核的等待队列是以双循环链表为基础数据结构,与进程调度机制紧密结合,能够用于实现核心的异步事件通知机制。在这个链表中,有两种数据结构:等待队列头(wait_queue_head_t)和等待队列项(wait_queue_t)。等待队列头和等待队列…

linux 终端 朗读,使Linux终端朗读文字的小技巧分享

对于那些不能文字朗读的设备,有个小工具可以实现文字说话的转换器。用各种语言写一些东西,espeak就可以朗读给你。系统应该默认安装了Espeak,如果你的系统没有安装,你可以使用下列命令来安装:代码如下:# apt-get insta…

linux 进程崩溃 wait,Linux信号机制有关问题

代码如下:#include#include#includevoid waiting(),stop();int wait_mark;main(){int p1,p2,stdout;while((p1fork())-1); /*创建子进程p1*/if (p1>0){wait_mark1;signal(SIGINT,stop); /*接收到^c信号,转stop*/waiting();kill(p1,16); /*向p1发软…

linux启动管理,Linux启动管理 详述

一 系统运行级别如果想查看运行级别,用runlevelinit 运行级别 就可以改变系统运行级别系统默认级别,也就是开机进入哪个级别,在/etc/inittab中二 启动过程首先是BIOS加载MBR,MBR里有个扇区,里面有启动引导程序&#xf…

weblogic 10.3.0.0 for linux下载地址,weblogic10.3下载地址

Oracle WebLogic Server 10.3.1 OEPE - Package Installer 单语言版带OEPEMicrosoft Windows x86: 756 MB http://download-llnw.oracle.com/otn/nt/middleware/11g/wls/oepe11_wls1031.exeLinux x86: 773 MB http://download.oracle.com/otn/linux/…

linux vfs 根节点名称,Linux:文件,目录项,索引节点,超级块,VFS,具体文件系统...

【笔记:http://m.blog.csdn.net/blog/zhouzhou135】在了解文件系统之前,先了解磁盘格式化的知识。所以要理解文件系统的数据结构,要从两个方向来理解:1:磁盘中的数据结构:因为在磁盘格式化的时候&#xff0…

简单的eda实验vga在linux系统中,EDA实验报告-VGA彩条显示.doc

VGA彩条信号显示控制一、实验目的:1. 熟练掌握 Verilog HDL语言和QuartusII 软件的使用;2. 理解状态机的工作原理和设计方法;3. 熟悉 VGA 接口协议规范。4.通过对VGA接口的显示控制设计,理解VGA接口的时序工作原理,掌握…

c语言中陶陶摘苹果while,洛谷 P1478 陶陶摘苹果(升级版) C语言实现

题目描述又是一年秋季时,陶陶家的苹果树结了n个果子。陶陶又跑去摘苹果,这次她有一个a公分的椅子。当他手够不着时,他会站到椅子上再试试。这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力气只剩下s了。当然&am…

c语言程序设计报告用于医院食品加工等部,南开(本部)《C语言程序设计》14春在线作业答案...

南开(本部)14春《C语言程序设计》在线作业 , W. v1 o) p. J2 n0 I试卷总分:100 测试时间:--4 v8 D, }8 e! w: D6 Y0 m一、单选题(共40道试题,共80分。)8 U: } j% ^2 T) F( q1.以下对一维整型数组 a 的正确说明是( ) C! f | }# n$ t7 g, z…

c语言中二分法100中找30,c语言中的二分法

\\\题外&#xff1a;对于printf引号中的内容一定要细心书写 ; 数组由a[0]开始计数&#xff0c;切记&#xff1b;尤其是与for循环中i1 搞混运用a[i1]等超前数据时 需先用for(i0;i<n-1;i){scanf("%d",&a[i]);}给数组全部赋值题目&#xff1a;对于方程 8*x^47*x^…

c语言 乘除法优先级,运算符运算符优先级 - C语言教程

运算符优先级运算符的优先级确定表达式中项的组合。这会影响到一个表达式如何计算。某些运算符比其他运算符有更高的优先级&#xff0c;例如&#xff0c;乘除运算符具有比加减运算符更高的优先级。例如 x 7 3 * 2&#xff0c;在这里&#xff0c;x 被赋值为 13&#xff0c;而不…

c语言long double位数,int long double 所占位数 和最大值

// // 32 // 位数 数值// int t1 pow(2, 31); // 4 2147483647// int32_t t2 pow(2, 31); // 4 2147483647// int64_t t3 pow(2, 62); // 8 4611686018427387904// NSInteger t4 pow(2, 32); // 4 2147483647// double t5 pow(2, 64); // 8 18446744073709551616.000000//…

存储器块清零c语言版,存储器块清零实验报告

有关单片机存储器块清零实验的试验报告存储器块清零实验报告班级&#xff1a; 11级计科班 姓名&#xff1a;苏靖 学号&#xff1a;1120070544 日期&#xff1a;2012-12-19一、实验目的&#xff1a;1、掌握存储器读写方法2、了解存储器的块操作方法.二、实验要求&#xff1a; 设…

C语言exchange函数,C++指针作为函数参数

函数的参数不仅可以是整型、浮点型、字符型等数据&#xff0c;还可以是指针类型。它的作用是将一个变量的地址传送给被调用函数的形参。【例6.3】题目同例6.2&#xff0c;即对输入的两个整数按大小顺序输出。这里用函数处理&#xff0c;而且用指针类型的数据作函数参数。程序如…

android自定义阴影,Android自定义边框加阴影

一、前言Android自定义边框&#xff0c;可以设置任意边框的角度和阴影。我下面分为 四个角度设置边框、两个角度设置边框、半圆球设置边框加两层阴影等。二、边框分类&#xff1a;1、四个角度设置边框效果图&#xff1a;图片.png2、两个角度设置边框android:topLeftRadius"…