Hi, everybody Recently, a guy noticed that I was using it and asked why? For me it because in Linux many things are done through the terminal because Linux has many different desktop environments

He also compared terminal commands with cheat codes in GTA and other games, he understands what benefits you take from them, but not from terminal commands

  • BudgieMania
    link
    fedilink
    906 months ago

    because every additional layer of abstraction disrupts communication with the Machine Spirit even further

  • @[email protected]
    link
    fedilink
    606 months ago

    Command line is a lot more powerful for a lot of cases. Most CLI programs are written with the idea that the caller might be another program, so they tend to be easy to chain with pipes and redirection. So you have tons of simple tools that you can combine however you need.

  • @[email protected]
    link
    fedilink
    416 months ago

    For tasks that I know, I’m faster in the terminal. For tasks where I’m less familiar or that are very important (like disk partitioning) I prefer a GUI because with a GUI I can usually see a bit better what I’m doing.

    Terminal tasks for me include copying stuff, setting folder permissions, uncompressing or compressing folders, quick edits in vim, etc.

  • magic_lobster_party
    link
    fedilink
    336 months ago

    The terminal is a power tool. I can do stuff with it that’s slow or inconvenient with graphical tools.

    I really like the piping capabilities of the Linux terminal. Incredibly useful for text processing.

  • @[email protected]
    link
    fedilink
    English
    286 months ago
    1. It feels great
    2. Terminal programs run on a potato
    3. They are almost always way more powerful then their GUI counterparts
    4. They integrate with scripts and other tools for unlimited power and flexibility!
    5. You feel like a hacker man
    6. Your IT literate friends think you are cool
    7. You can really do things your own way

    So yeah I love using the terminal for almost everything

    • @[email protected]
      link
      fedilink
      English
      16 months ago

      Can confirm #6. Wife calls it dark screen and does indeed think I’m cool for using it.

  • www-gem
    link
    fedilink
    226 months ago

    Terminal is faster when you’re used to it and sometimes offer more customization options to some apps that has both a GUI and TUI/CLI version.

    I use the terminal (st with zsh and tmux) for:

    • file management (advcpmv, fd, trash-cli, fzf …)
    • emails (neomutt)
    • text editing/coding (neovim)
    • project management (taskjuggler)
    • image viewing/organization (ucolla,ge)
    • online video browsing (ytfzf)
    • calendar (khal)
    • ssh
    • vpn
    • news aggregator (newsboat)
    • web, bookmarks manager (buku)
    • passwords manager (pass)
    • dotfiles manager (stow)
    • not in the terminal but I also have a lot of scripts used in rofi to control my audio input/outputs, launch a web search, access my bookmarks, autocomplete username and password fields

    I’m sure I’m missing some obvious tools I use daily. It’s hard remember everything when it becomes so natural.

    I have shared my experience with some of these tools here.

  • @[email protected]
    link
    fedilink
    English
    206 months ago

    Here’s the ELI5 answer I’d give to your friend:

    Computers are like servants. They do whatever you ask of them. But to be able to ask them things, you must do so in their language. On the extreme low level that means writing code to make programs, but on a higher level, it means talking to programs someone else already wrote using special commands.

    The buttons and switches on a GUI that you can click on with a mouse are like pre-recorded commands that instruct the computer to do some specific thing. The button or whatever will have a symbol or text description that lets you intuitively know what it’s for, and when you click on it, it plays a pre-recorded command to the computer in its language that tells it to do that thing. With these buttons, you can ask things of the computer in its language without having to know that language.

    As you get more intimate with the computer, this system can start to feel a bit stiff. You’ve essentially got a butler who doesn’t speak your language, and any time you need to give him a task, you have to fumble through a basket of pre-recorded tape recorder messages to find the one for the task at hand, and play it to him. For more complex tasks, you may need to chain several of these together. It gets slow and awkward. And god forbid you don’t even have a tape recording for the thing you need.

    It’s easier if you learn the butler’s language yourself. Then you can ask him for things directly. You’re not bound to any collection of pre-recorded messages to use, you can tell him exactly what you need. And if you don’t happen to know the word for something, you can look it up. It cuts out all the faffery with fumbling over a tape recorder looking for the messages you need to play.

    Using a terminal is roughly the computer equivalent of speaking to your butler in his native language. You’re not limited to only the buttons and features any particular program lets you have; you can make up exactly what you need on the spot. And you never have to bounce your hand between a mouse and keyboard to do it, you can keep your hands in one position at all times, which really adds up over time in both speed and comfort.

    Practicing this will also give you the side perk of better understanding how the computer actually works overall, and what it’s actually doing. This knowledge can come in super handy when diagnosing problems with the thing. When a GUI gives up, a terminal can keep digging.

  • Pope-King Joe
    link
    fedilink
    English
    196 months ago

    Because it just works. No bullshit. No bloat. Just fast and efficient.

  • @[email protected]
    link
    fedilink
    186 months ago

    Because I prefer using keyboard for almost everything and in most cases terminal is faster than GUI.

    • @[email protected]
      link
      fedilink
      126 months ago

      Really depends on the task and how critical it is. I would never use gparted on the terminal, 3 clicks and I’m done in the UI, without risks.

      • @[email protected]
        link
        fedilink
        56 months ago

        Lol yeaaah, parted in terminal is like tar, I have to look up the commands and flags each time and then because you’re messing with a disk, I have to double and triple check it.

      • @[email protected]
        link
        fedilink
        26 months ago

        How can it not be true though? Terminal shines when you chain together more than one operation.

        Imagine doing this in a GUI: list the files in a large directory, ignore the ones with underscores in them, find the biggest file, read the last 1000 lines from it and count the number of lines containing a particular string.

        Thats a couple of pretty straightforward commands in a terminal, could take 30s for an experienced terminal user. Or the same task could take many minutes of manual effort stuffing round with multiple GUI applications.

        I’m certain that I do tasks like that (ad hoc ones, not worth writing dedicated software for) tens of times in a typical work day. And I have no idea how GUI users can be even remotely productive.

        • @[email protected]
          link
          fedilink
          16 months ago

          How can it not be true though?

          How can it? It’s very simple, it takes far less time to click a mouse than it does to type a command.

          Imagine doing this in a GUI: list the files in a large directory, ignore the ones with underscores in them, find the biggest file, read the last 1000 lines from it and count the number of lines containing a particular string.

          Okay. I’m imagining it, it’s incredibly easy. What else?

          Thats a couple of pretty straightforward commands in a terminal, could take 30s for an experienced terminal user. Or the same task could take many minutes of manual effort stuffing round with multiple GUI applications.

          My guy, you’ve never used a file explorer?

          I have no idea how GUI users can be even remotely productive.

          Back at ya

      • CronyAkatsuki
        link
        fedilink
        16 months ago

        I can type at 100wpm, its a lot faster do just run a couple of programs than open a heavy gui program and try to find the correct button to type.

        • @[email protected]
          link
          fedilink
          26 months ago

          I don’t care how fast you can type, you can’t type faster than I can click.

          If the GUI takes any time to load at all, it’s garbage.

          • CronyAkatsuki
            link
            fedilink
            16 months ago

            That’s where alises and script’s come in, I can make a 20 click’s process in a gui be a single character command in the terminal.

            • @[email protected]
              link
              fedilink
              16 months ago

              I can make a 20 click’s process in a gui be a single character command in the terminal.

              If you can make it a single command in the terminal then you can make it a single click in a GUI and the GUI still wins…

              • CronyAkatsuki
                link
                fedilink
                1
                edit-2
                6 months ago

                for that I need to know gui codding and code the program it self, in terminal I just tie a few commands together and be done with it.

  • @[email protected]
    link
    fedilink
    186 months ago

    Because every IDE implementa a different git interface and I can’t be bothered to figure out where they hid the commit, push, pull etc. buttons this time.

    • @[email protected]
      link
      fedilink
      English
      56 months ago

      Damn I hate with a passion the IDE interactions with source control software. I may make use of the visual information they give me, but I still execute the commands in the console.

      • @[email protected]
        link
        fedilink
        36 months ago

        Same. Git GUIs can be great for examining commit trees, visualising patches, etc. For any write operations (this includes things like fecth and pull which write to .git), it’s all in the shell.

    • @[email protected]
      link
      fedilink
      56 months ago

      When teaching programming classes it’s awful trying to figure out every IDE’s git interface that my students are using. Each IDE puts the buttons in very different layouts and they even change the names of the buttons because they don’t like the way git itself named operations. It’s untenable to know them all and actually be efficient and helpful as the instructor.

      Instead, I say they’re welcome to use the IDE, but the class materials use the canonical underlying command line tools and terminology. They just need to search for how to translate the real git interface to however their chosen tool does the same operation, but it’s up to them to figure it out.

      When they do ask for help, I bring up the terminal (usually even inside the IDE) and run the git commands just like we went over in class.

  • Victoria
    link
    fedilink
    166 months ago

    it allows easy scripting. also for frequently used commands, i can just scroll up in the history, instead if clicking the same buttons over and over