Why Use The Terminal Instead of GUI Apps?

Поделиться
HTML-код
  • Опубликовано: 28 авг 2024

Комментарии • 393

  • @deadeye1982a
    @deadeye1982a 2 года назад +71

    When CS:S (a game) came out, I wanted to run my own server. This taught me how to use the command line exclusively. You always need a useful use case so that you are willing to learn new things and also spend the time needed for it.
    But I'm also the kind of person who would rather spend 15 minutes programming to automate something that takes 5 minutes of clicking orgy in a GUI. I hate tasks that are repetitive and they just get automated away so I don't have to worry about them anymore.

    • @RenderingUser
      @RenderingUser 2 года назад +5

      counter strike source?
      that kinda takes me back

    • @Supervideo1491
      @Supervideo1491 2 года назад +1

      @@RenderingUser Same here man

    • @Yunes948
      @Yunes948 2 года назад +6

      i still have my cs1.6 server up

    • @deadeye1982a
      @deadeye1982a 2 года назад +2

      @@RenderingUser yes, Counter-Strike Source

    • @nobeltnium
      @nobeltnium 4 месяца назад +1

      true, clicking on a gui is painful. Especially when you have to do that everyday or on multiple machines

  • @logicalfundy
    @logicalfundy 2 года назад +96

    Actually, there are things that need to be done in a UI that I can't really imagine how you'd do in a command line. In particular, artwork, design, 3D modelling, etc. Think Blender, Inkscape, or the GIMP. If you're a graphics designer for a marketing firm - you should probably be spending as little time as possible in a command line, because that's not time being spent designing graphics.
    I think a lot of command line warriors tend to miss an important point: Tasks like moving files around and configuring the machine and essentially "IT stuff" are a very tiny part of the average person's workflow. These are things most professions don't need to be done on a regular basis. But this video seems to give the air that all of these things are huge general productivity things.
    Sure, if your job is IT administrator - the command line is your life, especially on Linux. But what I think is happening is a lot of new Linux users aren't expecting to be IT, and are essentially being told that they're really IT when they just want to get back to their real job, which might be something like graphical design.

    • @astroid-ws4py
      @astroid-ws4py 2 года назад +11

      Linux is fine for both kinds of people

    • @awolsam
      @awolsam 2 года назад +27

      True some things need or is better done in a GUI. But I think even a user that does photo/artistic/design line of work could benefit from learning just a tiny bit of command line.
      For example for:
      - Re-encoding/muxing audio and video files
      - Batch manipulating images (convert format, resizing etc..)
      - Creating previews/thumbnails
      - Sorting/Renaming files in a structured manner
      So imagine you are graphics guy in a marketing firm, and one day you are faced with the issue of needing to convert and resize like 10000 images to three different formats and resolutions. And the smallest resolution needs to have sharpening applied. And on top of that all images have to be renamed in a specific format, with time/date etc.. All that could be done in a breeze in command line, while would take much more time and effort in GUI tools.

    • @raviolimavioli
      @raviolimavioli 2 года назад +3

      Can't imagine drawing by manipulating dots and creating gradient color with a damn CLI

    • @tatianabasileus
      @tatianabasileus 2 года назад +3

      @@raviolimavioli You can write SVGs from scratch in vim. Bam, graphic design at the command line.

    • @retrocomputing
      @retrocomputing 2 года назад +2

      @BoulderBro999 why? GUI isn't that resource intensive for 40 years already or so. And it's not easier for simple stuff that you need to do rarely, or when you need to interact visually with something.

  • @gregf9160
    @gregf9160 2 года назад +170

    I come from the generation where there was _ONLY_ a command-line interface. And for forty years I've been totally happy with that. However, occasionally, GUI interfaces are nice 🤗

    • @WildWestDesigns
      @WildWestDesigns 2 года назад +5

      Same here. I miss those days.

    • @TheBlueThird
      @TheBlueThird 2 года назад +5

      Those were nice days.

    • @dacritter8397
      @dacritter8397 2 года назад +9

      Yeah, when a terminal was literally a terminal. I remember those days very fondly, but I wouldn't go back in time other than to once again flirt with that cutie who granted terminal time.

    • @Sal3600
      @Sal3600 2 года назад +9

      i was gonna say boomer but you saved yourself in the end

    • @snipzmattio5887
      @snipzmattio5887 2 года назад +2

      I agree. Based comment

  • @HzYDuB
    @HzYDuB 2 года назад +17

    The statement that GUI apps just exist to run cli commands in the background isn't true. They may be using the same underlying libraries to execute the action but that is not the same as invoking a cli command.

  • @_jdfx
    @_jdfx 2 года назад +19

    Hey DT, it is my time to say a massive "Thank You!". Your videos really transformed me over the last 2-3 years. I used a regular Ubuntu in the past and I liked it OK enough, but I really upgraded my Linux skills thanks to you. I'm on Debian11 with Xmonad, Alacritty, NeoVim, I know a lot more about bash scripting, and I picked a few more related things along the way, a Planck keyboard configured with QMK, and I'm learning Rust (as a hobby). Keep up the great work!

  • @torsten.breswald
    @torsten.breswald 2 года назад +4

    another example:
    a guy came to the linuxmint help channel asking for help. he had a folder of emails mixed with other files, scattered over a few hundred(!) subfolders and within these subfolders the files were named all the same, like 1.eml 2.eml etc. . for some reason he wanted all those email files within one folder, maybe to search through them with some other programm, i forgot :)
    we tinkered arround that issue about 20-30 minutes and he endet up with a one line command that used the find command to catch all the files and at the same time renamed those files and copied them over into his target folder
    there are a lot gui apps that do lot of cool stuff, but there isn't one that does filter all files recursivly in a folder structure and renames and copies them over. and in that case if you try to do it step by step you run into issues, because you can't copy files of the same name into one folder, and on the other hand you cannot rename files with coninuous numbers throughout hundreds of subfolders...at least not with a gui tool
    and seriously he was close to do it by hand which might have taken him like 3 days of intense work or even more and now his command rushed through all those folders within seconds, and it was re-usable for later.
    it was a glorious moment when he tried it out and came back to give us the "it worked" reply :)

  • @sudaphedz433
    @sudaphedz433 2 года назад +30

    GUI and terminal programs do not do the same thing (aside from scripts) as what you would be doing typing in the terminal. You would be interacting with bash(or whatever shell) which would then call a program to translate that into a system call(or various calls). Although in terms of executing another program on behalf of the user, yes that would be similar. But for example, if I wanted to list files in a directory I wouldn't call the ls program. Instead I would do a syscall. Here's an example of this with a high level language iterating through every file in a directory and writing it to standard output.
    for(const fs::directory_entry &entry : fs::directory_iterator(somedirectory)){
    std::cout

    • @thomasfrans1185
      @thomasfrans1185 2 года назад +9

      Exactly, it's a bit weird how he gets this so wrong. In practice, it doesn't really matter (wouldn't want to be that 'what you're referring to as linux is actually... kinda person), but giving new users wrong information is a bit weird.

    • @xynyde0
      @xynyde0 2 года назад +4

      This is why people should also read comments instead of just clicking off of a video... You get to learn so many things, from different perspectives.
      Many programming languages allow you to use system calls and that is a lot more faster than spawning a new process everytime a shell command is called in the background of a gui app.
      DT should mention this point in his next videos or at least put this as an annotation.

    • @4cps777
      @4cps777 2 года назад +2

      However, there are some programs that actually use command line programs as backends.

    • @kushal710
      @kushal710 2 года назад +2

      Exactly, I started watching this video and 5 mins in he says a file explorer is running cd in the background and I am like this sounds wrong

    • @hil449
      @hil449 2 года назад +1

      He clearly lacks OS knowledge at the same time being a channel that talks about OS all the time lmao, that's ironic. But yeah, he was a manager before, he's not a developer

  • @oXinaboX9
    @oXinaboX9 2 года назад +6

    You're great.. My favorite RUclips Linux source! Newish to the game and appreciate your take on stuff and info on systems.

  • @ArniesTech
    @ArniesTech 2 года назад +50

    I actually see the benefits of "just" a frontend to actual stuff happening behind the scene.
    When I operate the gas pedal on my car, I do not need to suck air into my cylinders, inject the right amount of fuel, get the perfect timing right to ignite that stuff etc. I am just a noob pressing the pedal expecting a reaction from the car. Well knowing that at least 20 computers, sensors and 2000 mechanic parts are taking care of the job.
    When the GUI offers "Install software updates" I can perfectly understand a user to click it not caring a dime about whether sudo apt update or pacman -Syu etc is executed.
    Many users are perfectly happy if they never ever have to "open the hood" and get below GUI.

    • @knoopx
      @knoopx 2 года назад +8

      that's a terrible analogy. cli and gui apps are both cars but one is an old volkswagen you can fix yourself and the other is a shiny tesla you need to take it to service.

    • @rsmith31416
      @rsmith31416 2 года назад

      Then your car breaks in the middle of nowhere and you have to rely on the kindness of strangers that took the time and effort to figure out what happens "behind the scenes".

    • @prgnify
      @prgnify 2 года назад +4

      @@rsmith31416 as is everything in life, sometimes I hire electricians, sometimes I hire plumbers or a car mechanic. There are times that sure, I can go and change, add remove a few wall outlets, or change my shower head or change a tire here and there. But sometimes it is best to leave it to other people.

    • @rsmith31416
      @rsmith31416 2 года назад +1

      @@prgnify Acquiring a minimal level of expertise with the terminal is not what I would call a career, so maybe the comparison is not completely accurate.

    • @sufurt782
      @sufurt782 2 года назад

      This is is what alias and functions are for.
      Returning to your car analogy. Pressing the gas pedal is an alias for opening your throttle. So you'd just make an alias called "accelerate". The difference between the shell and a gui is that now you can combine that accelerate alias with other functions and create a "drive to store and pick up groceries" command by stitching together a bunch of accelerate, brake, and turn aliases.
      You simply can't stitch together buttons in a gui in the same way.
      When you're using the shell, it's not about typing in commands all day. You think about the tasks you normally do everyday and then automate them down to a single command. The ultimate zen however is to never type a command at all. So you hook up your script to a cron daemon or event bus and have it run automatically.

  • @nexusnui
    @nexusnui 2 года назад +20

    Looking for some files can be easier in a graphical file explorer, because of preview images of files. I think this is especially true for pictures that are named by the date they were taken.

    • @firor284
      @firor284 2 года назад +4

      I'd recommend you to look into ranger. It's a TUI (Terminal User Interface) file manager where you can preview images. You have to install another application and write like 2 lines in the config, but there are a lot of resources about it.
      Edit: Something I should probably mention: Ranger uses vim keybinds. This means you use hjkl instead of the arrow keys. This may sound weird at first, but it's so you don't have to move your hands away from your home row. Efficiency is what vim is all about.

    • @dacritter8397
      @dacritter8397 2 года назад +2

      The problem for me has always been thumbnails.. Gui is easier for photos.. Does the ranger, or any cli, offer a page('s) of thumbnails for scrolling? Or do need to highlight each file individually to view it?

    • @firor284
      @firor284 2 года назад +2

      @@dacritter8397 Sadly you can only preview the file you are currently on. I don't know if there is a cli tool where you can look over a lot of image files at once, but I mean you won't get punished for using a gui tool in that specific instance.

    • @Anonymous4045
      @Anonymous4045 2 года назад

      Personally this is never an issue for me. Just name the file something other than like "image1.png" and you should be good

    • @dacritter8397
      @dacritter8397 2 года назад

      @@firor284 ahh, no biggie. Thanks for responding. As you allude, some tasks just require a window.

  • @batboy49
    @batboy49 2 года назад +9

    It is not just for "newer to linux users" that freak out over terminals. I have met developers who would rather user GUIs even if it takes longer FAR longer than doing the same task in the terminal. ALSO NOTHING BEATS the ability to automate. If you did it on the command line...you can automate on the command line.

    • @hamobu
      @hamobu 2 года назад +3

      I have been using Linux for decades, including the terminal, and what you said is BS. Tasks in the terminal take way longer but nobody wants to admit it. Unless it's something you are doing daily, or you deliberately put effort to memorize, you never just belch out commands to do amazing things. 99 percent of the time you end up googling things you did just a month ago. Those amazing one line examples that people pretend they pulled out of their ass actually took a long time to research, develop and debug.

    • @batboy49
      @batboy49 2 года назад +2

      @@hamobu Perhaps that is your perception, and for some tasks it is even true. For others, a surprising number of others, it is not true that it is quicker to use a GUI. I would grant that it is easier to do 3d modeling on a GUI or audio editing. It is easy to underestimate the power of a tool if you look down your nose at it. Many people think using the CLI interface means typing huge arcane commands. Actually it is about chaining together smaller simpler commands and using reverse lookup a lot. Most times I am working in the terminal it is for less than a second. For many actions it is faster and simpler to press two or three keys than it is to click search right click left click open another window and drag then drop. I never said that GUIs lacked value I just said that command line is often faster. I appreciate a well written program regardless of whether it is command line or graphical. I will confess that I find it annoying when I am using a graphical program that I want to automate and I find I do not have a CLI...but that is darned rare so I am not often annoyed by it.

  • @hansdampf2284
    @hansdampf2284 2 года назад +6

    I’m on Linux for 17 years now, and it’s true that I gravitated towards the terminal over the years. It just happened naturally. Now I’m in the terminal most of the time.
    But I think some tasks are better done in GUI than in terminal. For example Browsing, editing text in emacs (I know there are lesser editors that run in the terminal, but being able to change font sizes mid document is a thing) reading PDFs and such. I use the GUI file manager because it gives you a better idea of where you files are but I tend to use the terminal for file operations that require root access.

  • @phonewithoutquestion80
    @phonewithoutquestion80 2 года назад +28

    For the command line, it's more about consistency than complexity or simplicity. For instance: the use of VIM-like keybindings in a terminal based email client or file manager is more likely, whereas on GUI equivalents you may have to find workarounds to implement said bindings. I don't think I would ever recommend a command line web browser for serious content browsing... it's a cool thought, just not realistic.

    • @hil449
      @hil449 2 года назад +1

      Can you access Gmail with these cli email clients?

  • @random6033
    @random6033 2 года назад +3

    5:11 pretty sure it's just running some C functions, not CLI programs
    5:53 no, it most likely a bunch of C code that reads one file and writes to another
    6:31 no, it's not
    6:51 here you're right I think
    yes, both GUI and CLI applications generally use the same or similar functions in the programming language they were written in and yes, sometimes certain GUI programs run CLI applications, but they generally aren't just a front end for CLI tools

  • @victorhugo-wo2ci
    @victorhugo-wo2ci 2 года назад +14

    TUIs and CLI programs are definetly one of the most strongest on linux. Specially on how volatile guis can be when changing distros and what not

    • @scudsturm1
      @scudsturm1 2 года назад

      like linus deleting his desktop with a apt bug

    • @victorhugo-wo2ci
      @victorhugo-wo2ci 2 года назад +2

      @@scudsturm1 apt is a disgrace indeed

    • @xynyde0
      @xynyde0 2 года назад

      @@scudsturm1 still better than windows.

    • @scudsturm1
      @scudsturm1 2 года назад

      @@xynyde0 depends on how much u are willing to tinker with it so it "works"

    • @falkens_maze
      @falkens_maze 2 года назад

      Exactly. CLI/TUI programs work and look the same regardless of distro or DE. If you want consistency in your Linux workflow it's in the terminal.

  • @bennyboiii1196
    @bennyboiii1196 2 года назад +11

    there's an article called "major linux problems on the desktop" which cites this reliance on the command line as a reason linux is not getting adopted by windows users. If it were me designing a distro, I would have as many (native to distro) gui alternatives to command line tools as I can. Complete with flags and all. This means new users will be able to adopt their own workflows right out of the box. A subfeature which would take this feature to the next level would be a modular system which would pipe the output of one of these apps into the input of another, just like the terminal. It would not only offer a linux alternative to many useful windows tools, but it would also create limitless possibilites with these tools, ready to be adopted by new users. There are many problems like this one that need to be fixed so the linux community can grow past the 1% market share on the desktop that it currently has. Also, there seems to be an adverse reaction to 1) criticism of any fundamental linux flaw and 2) direct comparisons with Windows. This needs to stop if we want to distribute FOSS to the common person, and not just fellow devs. After all, it's a movement, not a hobby.

  • @geisterkranker
    @geisterkranker 2 года назад +2

    I just wanted to say that i am very thankful that your channel exists! You were the reason i switched to Linux and its the best PC experience ive ever had! Keep up the very great work!

  • @Prophet6000
    @Prophet6000 2 года назад +3

    I used to be scared of the terminal but learning some basic commands you will love it.

  • @spliftube
    @spliftube 2 года назад +1

    To be more precise, the GUI is not an interface for the command line tools. Both the GUI and CLI tools are programs that interface with the OS (ultimately via syscalls) to access the filesystem and do operations on it. For example copying a directory in the GUI would not call something like `cp -r` under the hood; more likely both cp and the GUI use stuff like readdir(3) to read the source directory files, open(2), read(2), write(2) to copy files, etc.

  • @raviolimavioli
    @raviolimavioli 2 года назад +10

    Sometimes things like browsing files, coding, updating system, maintaining server, converting a thousand file, cd, ls, etc are better and easier to be done in CLI.
    But not all things is easier, and not everybody that uses linux are programmer. They probably video editors, graphic designer, 3D artists, or engineers, in which the software that they use are basically impossible to do in CLI.
    You can't just force them to make artwork by typing individual pixel on a terminal

  • @BiserAngelov1
    @BiserAngelov1 2 года назад +8

    I can choose to build an environment that is keyboard driven, barely using a mouse, for a laptop for example. And the CLI apps are shining there. But you might want a mouse driven, barely using a keyboard, desktop experience. For home multimedia systems. Or wireless mouse, or kdeconnect oriented desktops. In that case, you might prefer GUI apps. The good thing in an open source ecosystem is the availability of such a choice. And at the end, every approach is superior, because that is your decision for your needs and goals.

  • @samismydog
    @samismydog 2 года назад +7

    Yeah, when I first started Linux I wondered this. Now I'm way more productive on a terminal interface. I prefer using it over a gui. Weird how things change.

  • @TopNotch770
    @TopNotch770 Год назад

    THE BEST explanation on the topic I've seen! Thank you!

  • @AriannaEuryaleMusic
    @AriannaEuryaleMusic 2 года назад +4

    I love to use the Terminal, Im always trying to find good Terminal Apps and I use them everyday like TaskWarrior, Pass, SC-IM,, ssh, wireshark and all the pentesting tools, there is something about the Linux Terminal, maybe because reminds me so much of the Applesoft BASIC from when I was a little girl

  • @nabiltriaki8890
    @nabiltriaki8890 Год назад +1

    thank you for the video, i started learning web dev and was required to learn THE ubuntu Terminal while i was learning i had this feeling that the terminal is holding me back from speeding through the courses, i have a programing background plc programing so i'm used to GUI applications never used the terminal, but after watching your video that feeling of the terminal is slowing my progress is gone and i have a new conviction to master it , so thank you =D i'll be checking all your videos

  • @paulseldn
    @paulseldn 2 года назад +1

    Great explanation. I have never heard a better argument for learning terminal. I became a terminal addict within weeks of moving from windows to linux

  • @seths1997
    @seths1997 2 года назад +2

    I was the opposite. Started using linux in 2007 with RHEL 3. The previous admin would build a server with gnome and do all of the setup there. I did that for a very brief time but then didn't like it. Learned how to do things (subscription registration, network settings, etc.) from the command line and quickly stopped building servers with a GUI. I get this mostly for running linux on your desktop as a daily driver, but for a server, building a system with no GUI and seeing memory usage at less than 200mb on a fresh install is a beautiful thing :)

  • @luigiramirez29
    @luigiramirez29 2 года назад +1

    Wow you really do explain things to my level. You completely got rid of my fear of the command line! Thank you.

  • @JamieKitchens6
    @JamieKitchens6 2 года назад +7

    I think that Windows uses switching to Linux feel more comfortable with GUI because it's familiar. Like you said, the CLI can be daunting. I had the opposite experience; I loved experimenting, and still do, with the terminal and I still learn new things after many years of using Linux.

    • @branpod
      @branpod 2 года назад

      Which I find interesting since Windows doesn't even do a great job with their GUI. If you were coming from something more elegant like Ubuntu or maybe even MacOS, I would understand, but Windows?

    • @hil449
      @hil449 2 года назад

      @@branpod 90% of the planet uses windows dude, are you that self centered?

    • @branpod
      @branpod 2 года назад

      @@hil449 huh? I’m saying windows shouldn’t improve, not that the world should switch to Linux. The most widely used operating system should not have two different settings apps (with completely different design languages) to accomplish similar tasks

    • @branpod
      @branpod 2 года назад

      @@hil449 also, this is a Linux channel

  • @armandoleon9901
    @armandoleon9901 2 года назад +1

    I kept forgetting stuff about Linux, so I forced myself to live in the terminal by learning vim, some basic commands and created a adopted a workflow in the terminal. Super helpful, and it helped me at work.

  • @MarkMcNallyJE
    @MarkMcNallyJE 2 года назад +1

    GUI applications almost certainty won't run the actually command line equivalent, copying a file in a file manager will not run a cp command in most cases.

  • @michaelgautier
    @michaelgautier 2 года назад

    My first encounter with computers for the first couple years I dealt with them with strictly command line. I am definitely an advocate for command line and your description clarifies the advantages in a very accessible way.

  • @kevingary7018
    @kevingary7018 4 месяца назад +1

    :) The beauty of GNU/Linuix is you usually have a choice - most people use both. I notice even Grandma & Grandpa open a terminal on occasion. With only ~1.5% of the desktops on this planet actually using a Linux operating system, your preaching to a very small choir, who probably already demonstrated their passion by having the Linux operating system installed on a hard drive.

  • @dacritter8397
    @dacritter8397 2 года назад +2

    I use the terminal all the time for the sole purpose of Rick rolling passers-by.

  • @Octavus5
    @Octavus5 2 года назад +1

    Apart from functionality, power and all that, I think there's also a "relational" difference between the CLI and GUI. The CLI is like "talking" with your system. You're communicating in something akin to human language. You ask it questions and it answers. Or you kindly request that it do something and it tries to carry out your request the best it can.
    The GUI, on the other hand, treats your system like an "appliance". You press buttons, turn knobs, and pull levers like a refrigerator or stove. Your system is an inanimate machine. It's mechanical.

  • @DylanMatthewTurner
    @DylanMatthewTurner 2 года назад +1

    Just switched over to spotify-tui recently, and I love it. I want to switch over everything to to terminal and tui as much as possible over time

    • @Juiceboxmakes
      @Juiceboxmakes 2 года назад +1

      Thought I was the only one going through that

  • @mytruepower2
    @mytruepower2 2 года назад +1

    I'm a big fan of convenience, and also of retro games, and when I first got my PC running on Linux, I spent a while setting up most of my games to run on it. On the one hand, I did create a whole bunch of GUI applications for my games (especially the ones like for DOSBox, where the command line would take a long time to enter.) On the other hand, Terminal was incredibly helpful when doing that, because I could easily use it to test the command line that I wanted to turn into an application. If it ran in terminal, it would run in an application. If not, I could re-examine it to figure out what went wrong. It's doubtful I would have been able to get some of my games running so smoothly, without using Terminal, and it's doubtful that I would put in the effort to launch some of my games without GUI.
    Edit: I've just learned more about the bashrc, and am eager to try running some of my dosbox games using custom commands instead of apps.

  • @hil449
    @hil449 2 года назад

    This makes total sense for every programmer, other people not so much

  • @KevinBReynolds
    @KevinBReynolds 2 года назад +1

    Another great video DT. Thanks!

  • @xynyde0
    @xynyde0 2 года назад +1

    Not all gui apps are fronts to shells... most programming languages provide the developer an option to use system calls. Thats faster than using shell for everything.

  • @AndersJackson
    @AndersJackson 2 года назад +2

    If you want to create Containers, like for Docker, you NEED to script installation from command line in the Dockerfile.

  • @megaman6710
    @megaman6710 2 года назад +1

    A great advantage of the terminal is help & support. I set my brother up with Linux Mint after he had problems installing Windows. And helping him install programs couldn't have been easier.
    I could've helped him navigate the software center, told him that the search bar was somewhere in the corner, and help him download it that way.
    But instead, I just copied and pasted commands and messaged them to him, and he copied and pasted the commands into the terminal.
    Terminals are the most universal way to get support questions answered on Linux.

    • @hil449
      @hil449 2 года назад

      The problem with that is that with GUIs he would probably learn how to download programs in the same day and be independent and if he only copy pastes commands he might be dependent on you, cli has a steeper curve

  • @SvalbardSleeperDistrict
    @SvalbardSleeperDistrict 2 года назад +1

    I think it depends on what you do with your distro. For those involved in scripting, advanced system organisation, etc, it seems natural and fitting to use the same approach for system management, but for those who don't really interact with the parts of the system that benefit from command-line use, I have never come across good arguments on why they should learn and use terminal.
    I certainly understand the _aesthetics_ of command line operation of an OS - the nerdy, vintage aesthetic of doing it, which fits the FOSS community ideas so well. That aesthetic has been the reason I have been trying to learn basic things like Polybar/WM installation, and getting back that urge to accomplish it after every time I fail at it, in the absence of a coherent, step-by-step, continuous guides for complete newbs on the subject. But for practical reasons, I think many users will never come across the use scenarios where command-line use would benefit them more than GUI use.

  • @kevinlopezobrien5366
    @kevinlopezobrien5366 2 года назад +1

    Even if someone usually uses a GUI day to day, knowing how to operate your terminal is great for when things break. That terminal is your toolbox for all things computer. And no matter which distro you pick, that terminal is always there and always does things the same way (package managers notwithstanding). So consistent. So reliable! And makes distro hopping a less intimidating affair too!

  • @anon_y_mousse
    @anon_y_mousse 2 года назад +1

    There was a good decade where I only used elinks as my web browser. Fun times.

  • @jameshorner2045
    @jameshorner2045 2 года назад +1

    So many great points I never thought of!

  • @pazzoeo
    @pazzoeo 2 года назад +3

    Personally I disagree with the notion that the advanced user will eventually come to use the terminal almost exclusively
    I think it's very subjective. I can use a terminal and have no problems popping one up when I need it, but I can't match the real, tangible comfort and speed I have with GUIs. I can cd my way through my files but then I'm constantly ls-ing to even figure out where I am and what I'm doing, what's in the folder, where I need to go, I just get confused and lost if I can't see a visual representation of what I'm doing. And why would I use pacman/pamac-cli when pamac lets me search a word and scroll through a list of all the results, click on one and read any info I need, read the AUR page of the package so I can see if there's anything I need to know, update in a couple of clicks etc.? What good does starting an update or an installation faster do when I know I'm gonna have to wait a few minutes to an hour for it to finish the operation anyways?
    People will say that they ARE faster with cd, and they ARE more comfortable with pacman etc., and that's good. My point is that everyone should use whatever they like most. I just disagree with thinking that everyone will eventually end up in terminals all day given experience
    Also on the topic of terminal-exclusive advanced commands, I think those commands should be used and nobody should feel afraid to do so just because they prefer GUIs. I'm not a GUI elitist, I just think people need to use the tools they have in the way they're more efficient and comfortable in

  • @JacobMoen
    @JacobMoen Год назад +1

    One big advantage of using keyboard driven tools like the command-line, Vim, or Emacs, is that you develop muscle memory. You perform many tasks without thinking, because your fingers just moves automatically. It's just much more efficient. Like playing an instrument. Rodent-driven activities is nice sometimes, but it can never be performed via muscle memory.

  • @strangersound
    @strangersound 2 года назад +1

    The terminal/command line is your friend. It only seems intimidating because you're not used to it. Why use a convoluted GUI when a simple command or two can get the task done? In my opinion, becoming familiar with using the command line is one of the best things using Linux does for you. :)

  • @damadorpl
    @damadorpl 2 года назад +2

    speaking about comandline. Not only on SO users give comand hints. Most things on windows suport forum use win powershell to collect data or fix problems

  • @alt2458
    @alt2458 2 года назад +1

    Video recorded using OBS and edited using Kdenlive and Thumbnail made in GIMP and uploaded through a browser? Just wondering.

  • @hawks5196
    @hawks5196 2 года назад +1

    My first introduction to Linux was via the command line (a few years back). I wanted to run a media server and was forced into the deep end but glad I did! Now I feel more comfortable in the CLI than most Linux GUI’s 😂 like with anything, you need a project your interested in and then the learning of Linux comes naturally over time. I find working within the CLI you have to have a much better mental image of where everything is and also remember all of your favourite tools etc.

  • @BatManSWG
    @BatManSWG 2 года назад +2

    Keep it up these very good videos about Linux
    you amazing
    Whoever i say about Linux, i telling them about your channel so seek guidance and take a idea what needed to do
    Cheers!

  • @viacheslav1392
    @viacheslav1392 2 года назад +1

    Man, your examples are great, but the part about file managers is a bit misconcepting...they do not run ls or cd! cd is a builtin shell command at all.. The are some simple linux system calls like readdir to see the files inside. Anyway other GUI apps really do rely on their CLIs.

  • @user-gt2gy8wo3h
    @user-gt2gy8wo3h 2 года назад +1

    also it's mostly due to fragmentation of Linux desktops.
    terminal offers a consistent means to do something when hopping between desktops (or when no desktop even exist)

  • @deathxxx1231
    @deathxxx1231 2 года назад

    What MIC you use? You sound really good with this one. In fact it's perfect sounding. I use Linux and i want to found one that works like your's.

  • @argonnath2
    @argonnath2 2 года назад +3

    Sudo apt update && sudo apt upgrade makes you hackerman if you do that at work.

  • @thomasullmann7447
    @thomasullmann7447 2 года назад +1

    two exceptions for me are for gaming and recording music. For my physics thinking alogirthmically is another advantage of keeping it to the command line as it suits the mindset.

  • @DonaldWyman
    @DonaldWyman 2 года назад +2

    I am somewhere in the middle I am not scared of the terminal and have no issues using it if I need/want to (like I don't use a GUI package manager tool at all), then there are something's I just rather use a GUI app for. I do however think that the people that preach using the terminal for everything is a big turnoff for Linux for people who aren't tech-savvy people, and it is why you get the people who say "Linux is hard" because they are not shown that there is a GUI way of doing whatever it is they want to do. They are instead told they have to remember these terminal commands, or they should just go back to letting windows spy on you, which is not the case.

    • @Anonymous4045
      @Anonymous4045 2 года назад +2

      Tbf this guy opened by saying its for intermediate to advanced users. Imo you use the cmd line if you want more power out of your machine. If you just want something that works very similar to windows but isnt windows, you pretty much dont need to touch it. But if you want to relearn a different way to do most of what you do on your comp, you should invest some time in learning the cli

    • @DonaldWyman
      @DonaldWyman 2 года назад +1

      @@Anonymous4045 I am not saying he is forcing people to use the CLI or doing the gatekeeping I am just saying this happens a lot where people will talk down to people who prefer to use a GUI or try to convince them they shouldn't use Linux if they don't want to use the CLI.

    • @Anonymous4045
      @Anonymous4045 2 года назад +1

      @@DonaldWyman yeah i agree with you there, its unfortunate how many elitists there are

  • @scottb4029
    @scottb4029 2 года назад

    Two months ago, I would have fought you tooth and nail about the GUI. But you are right. Now I use the CLI almost exclusively. Tmux is almost always on, I even use it on my android tablet with open ssh so I can remotely shut down my son's computer. Try doing that with a GUI. Even if you can, I do it with a sign in and one line. I was afraid of the command line, but I was started on MS-DOS and Linux CLI is very familiar feeling, and that helped me acclimate.

  • @baneblade__
    @baneblade__ 2 года назад +1

    Terminal makes me feel smart and cool :)

  • @mrbaba4355
    @mrbaba4355 2 года назад +2

    Hi,I'm a graphic designer. I was thinking of moving to tilling window manager and terminal applications.but I don't see the point.

    • @raviolimavioli
      @raviolimavioli 2 года назад +1

      You don't need to do anything with terminal
      Use the right tool for the right job,

  • @mukkaar
    @mukkaar Год назад +1

    Thing is, for most people learning or using command line is most likely going to MUCH slower and more inefficient than well designed GUI. By this I mean overall, I mean sure, you can probably shave off some seconds or even minutes from tasks as expereinced terminal user, but it really means nothing if that task is only done once in a while. I mean sure, terminal can be faster for experienced user, but you need to become on first, you need to use terminal enough that stuff doesnt just slip from your mind and finally you need to do task enough that it actually matters. Or you could juse get app that make it even more efficient.
    You are only going to benefit from terminal if you do some specific tasks a lot. Most people use OS to to run programs and do stuff with them, they don't use OS itself as tool, it's platfrom.
    Overall, if you do type of stuff that needs or would benefit from terminal, some kind of system management, you are going to end up using it. Otherwise it's most likely waste of time.

  • @yousefkhaled2
    @yousefkhaled2 2 года назад +2

    how to make terminal show predicted sentences on ubuntu like in arch

  • @RadioTeal
    @RadioTeal 2 года назад +1

    I came from DOS to Windows to Linux (with some Macintosh thrown in for good measure) and I think a big advantage is speed and being closer to the hardware without extraction which also reduces the chance of things crashing and losing data. Just my opinion of course. Also I feel that when you get good at CLI, GUI slows you down IMO 🙂

  • @JamieKitchens6
    @JamieKitchens6 2 года назад +1

    Mr. DistroTube, how long have you been using Linux and what is your primary OS?

  • @ruser1002
    @ruser1002 2 года назад +1

    "Even if your a GUI virgin, one day you will be a terminal Chad"
    - DT

  • @ShrewT34
    @ShrewT34 2 года назад

    I agree. I would add that when using the terminal you're actually conversing with your machine in a language and that's the essence of what makes it so powerful. Once you learn the language, anything that can be described in that language can be done.

  • @rationalbushcraft
    @rationalbushcraft 8 месяцев назад

    One of my certifications back in the day was SCO Unix. A lot of doctors offices had SCO to run their practice management. Two things happened. One SCO went out of business and two electronic health records became mandatory in the US. SCO didn't have a GUI. But all the new EHR software included practice management software. So we migrated a lot of doctors over to windows based EHR/PM software. Well they all hated it because they could do it so much faster on the old SCO software. They knew every shortcut and could fly through the menus. Not a one was happy with the new system.

  • @mavfan1
    @mavfan1 2 года назад +7

    Hate terminal. Won’t use it. The less I need to type the better due to arthritis.

    • @knoopx
      @knoopx 2 года назад

      get a split/ortho keyboard. learn to use autocompletion.

  • @thenextpoetician6328
    @thenextpoetician6328 2 года назад +1

    You're missing the point that some people are wired for the terminal, some are not, and in between is every color of the rainbow. Hammering with a saw is nonsense.

  • @ArcaneWorkshop
    @ArcaneWorkshop 2 года назад

    I remember when I was a kid, my older brother taught me MSDOS inside and out. I was so super comfortable with it, I was building my own batch files to make things quicker and easier, and knew the commands, as well as the layout of my filesystem like the back of my hand.
    Then Windows 95 came out.
    I was... so lost. Luckily, Win95 gave you a DOS shell, which I constantly used for everything. It took me a solid year or so, before I became comfortable with the GUI. So it's interesting to see this difficulty happen in the reverse nowadays with Linux. If you can't imagine yourself being more comfortable typing in commands on a text interface, vs clicking icons, trust me, you'll soon understand it once you decide to delve into it.

  • @0x007A
    @0x007A 2 года назад +2

    I am one of those people who finds GUI applications are difficult to learn. By contrast command-line/terminal and TUI applications are much easier for me to learn and use productively. The web browser is the only GUI application that I can handle. The opposing views tend to be generational in the sense what each person was exposed to when they started using a personal computer.

  • @CrustyAbsconder
    @CrustyAbsconder 2 года назад +1

    Mr. Taylor, I had to downsize my life and only have an old crappy Chromebook. I have Debian 11. 3 running and using the Beta
    Version of ChromeOS ( 102 ). I have the terminal app pinned to the dock and it is usable for doing all kinds of stuff. I would
    recommend people at least try doing this, to see how easy it is to take Linux with you where ever you go. My Chromebook ( the
    ACER C315 ) can be found refurbished or used really cheap online. But I would bet most Linux users would want better specs
    than what my model offers. I would prefer to have a laptop running just Linux, but I have not got around to that.
    COVID hit me really hard, and not sure if I am out of the woods yet, as I have not been well for five months.

  • @locatemarbles
    @locatemarbles 2 года назад +1

    After decades on Linux I have concluded that almost everyone (apart from graphic designers) would be better off on the terminal. Yes even non-powerusers browsing the web, watching movies, listening to podcasts, writing mails and occasionally editing documents.

    • @worldhello1234
      @worldhello1234 Год назад +1

      How about NO? The CLI, not to confuse with clit, is great for troubleshooting and consistancy but apart from that, not really.

  • @strictlyirving498
    @strictlyirving498 4 месяца назад

    Subscribed❤good content

  • @VanRitter_
    @VanRitter_ 2 года назад

    Thank you DT! as always, you are right! Please let your pc rest a bit, it's been turned on for almost 11 days.... xD

  • @sophieedel6324
    @sophieedel6324 Год назад

    systems moved to GUI over command-line for 3 main reasons
    1) command-line is not secure since it is prone to typing errors
    2) command-line is not secure because it is vulnerable to keyloggers
    3) typing out commands is slower than a GUI

  • @AndrewErwin73
    @AndrewErwin73 2 года назад

    I feel like you are asking the question wrong... I evolved into terminal applications. There is literally nothing I can do with a GUI that I can't do in the terminal. The ONLY exception is graphics heavy websites and apps that I create for clients. But, I started with the mouse and graphics and have evolved to the terminal. The web browser is literally the only GUI app I still use.

  • @nanika2566
    @nanika2566 2 года назад

    I've noticed you start some videos with 'one of the', is intentional?
    on-topic, I prefer CLI instead of GUI, but I gotta agree GUI is useful too ^^

  • @WildWestDesigns
    @WildWestDesigns 2 года назад +1

    Ironically, I've written C++ programs wrapping a GUI around some terminal applications (and rather sophisticated commands as well, gotta love system();). Of course, I have even written console programs for cli programs, just to simplify what I had to remember.

  • @johncrwarner
    @johncrwarner 4 месяца назад

    I bought a raspberry pi and to start with
    I loaded the default GUI OS and
    I was lost until I opened the terminal
    and could manipulate things
    I then discovered that there was a "lite" version
    and that it was more to my taste
    because virtually the only gui application I use
    is a web browser but I have vimium running
    so it is keyboard driven.
    I do virtually everything with the keyboard and commandline activities

  • @fabianpijpers
    @fabianpijpers 2 года назад

    You start with the shell after you have seen wysiwig problems letting you down.
    After learning that you start with scripting and programming.
    But then what is programming and scripting in most cases.
    A graphical front end for your command program or script.

  • @vicca4671
    @vicca4671 Год назад

    Command lines began to shine for me when I learned how to write custom commands/scripts for simple stuff, chain commands together and stuff like that. Since my short-term memory is really, really bad, one of the best things I've ever done was to chain "cd $path && ls -a" in a custom function.

  • @chessgo5028
    @chessgo5028 Год назад

    3:24 May be it is faster to access the information with terminal, but the visual appearence of the information on the the terminal is intimidating, because it is only text there, and nothing else.

  • @FrankCastiglione
    @FrankCastiglione 2 года назад

    I (still) just use GUI most of the time (when I need to use Terminal, usually copy/paste). I'm currently using Pop!_OS, because of window tiling (I'm using it for studies and I need to multitask to watch the video, take notes, consult websites, etc).
    21:36 These constant changes in the graphics part are exactly what made me give up on Windows. I knew many shortcuts and functions, but in the last versions I realized the following: they made the system more "friendly" (colorful, visual) for lay users and, with that, left a lot of obstacles for intermediate and advanced users, who already knew the system well.

  • @YoStu242
    @YoStu242 2 месяца назад

    The thing is that with Linux terminal you have to be practically some kind of semi-programmer with savant memory. I have been using Linux for a while and occasionally terminal has to be used (because of lack of gui option) but I don't remember other than few basic commands and practically always have to google how to do something. And even then I often don't understand what stuff in instructed command line means, I just copy-paste and hope for the best. Recently I managed to mess up some package dependencies and even that proved impossible for me to fix by following instructions. Thankfully there was still working GUI and timeshift I could use to revert to previous system state. I guess command line is not for everyone.

  • @logiconabstractions6596
    @logiconabstractions6596 Год назад

    Good one. For me, the main reasons I often favor terminal:
    1 - Repeatability of commands
    1b - Thus possible to script/create shortcuts for common commands or even groups of commands
    2 - Extensibility - command line stuff typically has a whole range of options/arguments for more precise ops. Graphical stuff tends to be limited to common use case. Indeed, building UI takes a lot of time, and implement ALL the options/commands of a terminal app takes a lot of time. Not worth it if it's used only by a few ppl not too often.
    3 - Portability - if I'm working on a VM, in a Docker container or remote server or whatever, commands I know & use locally are still available 90% of the time on any linux distro without installs
    4 - Combination - can't really combine UI stuff, but easy to do with cmd lines.
    I'm a programmer so obv lots of incentive. Working for a new company that is kinda windows-easy. I'm trying to avoid it as best I can. Actually terminal stuff is one of the main reason I hate Windows. It's just not designed to be terminal-driven.

  • @colbyboucher6391
    @colbyboucher6391 Год назад

    I don't know, dude...
    You can have a speedy keyboard-driven interface without it being mostly terminal-based. And it'd often be way faster that way because it'd just be shortcuts rather than typing whole commands out.
    I started using the terminal more when I discovered that big enterprise Java stuff that can a pain to configure in IDEs can often compile and run in just a few terminal commands. All the configuration is already done, but with an IDE you pretty much have to do it all over again.

  • @wizardatmath
    @wizardatmath 6 месяцев назад

    Would love to see how gui implements scrolling with the mouse

  • @davidschoultz7110
    @davidschoultz7110 2 года назад

    I really like this video and I hope it gets lots of exposure. Being IT literate, I bounce back and forth between CLI and GUI. It all depends what I am doing. I think the issue is exposure. People aren't taught terminal, or CLI unless in a class involving administration. From what I've seen, it's even less shown unless in a Linux class for the terminal. None of this was meant to be just a form of IT elite (I laugh saying it). But that's a perception I get talking to people. More exposure and spreading this information is a good thing in my opinion. Need to demystify the terminal.

  • @jonny777bike
    @jonny777bike 2 года назад +1

    I use SSH when accessing my raspberry pi. The terminal is great for me especially when Im accessing my raspberry pi headless. For headless operations is great. When accessing websites its getting into the heart of them. To me I use either the terminal or the web browser. VNC takes too long while terminal is much faster. GUI takes up so much time.

  • @Krreko
    @Krreko 2 года назад

    12:18 I think in cases like this distributions like Fedora Silverblue can recover from it rather easily. If I'm not mistaken in the boot menu you have the different snapshots that you can boot from and if one doesn't work then you go back to the previous. That's neat.
    But not everyone is running Silverblue so, there's that.

  • @moaxcp
    @moaxcp 2 года назад +2

    Wrong. GUI applications do not usually run command line tools. They call an api located in the libraries or in the kernel.

    • @ruser1002
      @ruser1002 2 года назад

      Just think of it as an analogy. Partly true, most coreutils are named after corresponding system calls that are used pretty much everywhere. chmod,chown,stat,dirname,basename, chroot,mkdir etc... All sys calls.

    • @moaxcp
      @moaxcp 2 года назад +1

      @@ruser1002 But it is not an analogy. He is saying the GUI literally calls the command line.

    • @ruser1002
      @ruser1002 2 года назад

      Well you can actually run a terminal command from a GUI using system(3) library function. So he's not too far from the truth.

    • @moaxcp
      @moaxcp 2 года назад +1

      @@ruser1002 Yes you can that is why I said "GUI applications do not usually run command line tools." For instance in the example of the file explorer he presents. GUIs like that would typically make and api call and not call a command line tool.
      It is a huge difference because in the case of calling the command line tool you would need to deal with multiple processes and providing input and parsing the output. It is a real pain for certain tools. Where with an api you only need to call a method and get the results in whatever language you are using. It really doesn't make sense to use a command line tool at all in most cases.

    • @queerstudbroalex
      @queerstudbroalex 2 года назад +1

      @@moaxcp I agree with you, as I've said elsewhere in the comments if I did literally what DT said in Python, then changing a directory would not work properly. os.system("cd /etc") for example would start Bash, run cd and then in that process the directory would be changed. Not in the Python program, as print(os.getcwd()) after that line would not show /etc.

  • @geoffreyvanpelt6147
    @geoffreyvanpelt6147 Год назад

    Have you played with Plan9 or 9front? I has an interesting combo of command line and GUI.

  • @glensmith491
    @glensmith491 2 года назад

    A GUI for file management, today people might call it a TUI, was the first thing wrote when I got my first system back in the late 70s. I also usually script many terminal commands into a more GUI/TUI like environment now using tools like yad, rofi or denunciation. For development, especially human interface development, I was so happy in the late 80s when I found the first decent program generators. The main reasons I like the command line with the power of bash is that I can so easily script a GUI-like tool more customized to me. After designing my editor, a project I undertook due to vi clunking, next projects were about turning most systems management needs into TUIS.

  • @scudsturm1
    @scudsturm1 2 года назад +1

    would be funny to setup two new systems, and config both like your daily machine, but one of them with a gui app, the other with terminal and make a race of it in a video

  • @leksmut
    @leksmut 2 года назад +1

    Some tasks like editing media content only for gui

  • @techwizja9086
    @techwizja9086 2 года назад +1

    i think i may have to DM you for this one but is Linux really safe? Is it really more secure with my personal data than Microsoft?

    • @techwizja9086
      @techwizja9086 2 года назад +1

      @Watcher ok nice cauz I wiped my windows partition & I dnt think I'm going back to Microsoft unless it's a VM. I see these vids on the internet everywhere and Microsoft had me scared

  • @knoopx
    @knoopx 2 года назад

    gui apps are not just cli frontends (spawning processes underneath), i know you are trying to make it easier to understand but it's just not true. most gui apps, just like cli apps, rely on system calls/libraries.