I know we all enjoy being nerds and using commands (H4ckerman). But now that everything is either a gui or web based, is there really any use to terminal commands?

For example, on windows I never used powershell or cmd hardly ever. I realize now I probably could have. But Linux just drives me to use it more, which i like anyway (because let’s be honest, it makes us feel superior)

  • Pika@rekabu.ru
    link
    fedilink
    English
    arrow-up
    19
    ·
    7 days ago

    Absolutely!

    First, terminal is, for the most part, distro- and DE-agnostic. Unless you use something specific to the distro or DE (like package management or working with DE dependencies), what would work on one Linux system would also work on the other. This allows you to immediately get a grasp of any Linux system.

    Second, terminal is fast. You can search through GUI for all eternity, or you can type one line that does what you want, saving tons of time in the process.

    With that said, both GUI and terminal should develop hand in hand to provide a user experience that suits both regular and power users alike. Windows commonly shifts to the side of regular user, while making it harder for power users to do what they want. Linux as it was in the old days shifted towards power users.

    Nowadays, I think Linux finally strikes the right balance - it is accessible and powerful at the same time.

    • bridgeenjoyer@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      7 days ago

      Could you elaborate ?

      I’ve always wanted to get into coding but what ive watched/read on something like godot or VBA was all clicking certain boxes in the gui and didnt interest me much. Are you saying like python and scripts ? That makes sense. I have no clue what programmers actually do since ive never been able to find something to apply it to

      • Poik@pawb.social
        link
        fedilink
        English
        arrow-up
        2
        ·
        6 days ago

        Clicking? I spend most of my time typing. Even in Labview there’s some typing to do. And godot requires a substantial amount of code to go with the gui side, it just has its own text editor.

        But I mostly mod games these days, and I frequently need to understand the terminal api that’s being used to gather and use resources because the vscode gui fails to get things set up on its own a lot. I use the terminal directly less these days. But I still interact with it daily. Heck, I even use terminal args in steam game launching to improve performance occasionally.

        I mostly use the terminal for automation though. And ffmpeg.

      • Badabinski@kbin.earth
        link
        fedilink
        arrow-up
        4
        ·
        7 days ago

        I wrote a program at work that gets deployed to hundreds of thousands of systems and is very hard to fully test or instrument. This program recently had a bug that was hard to track down. Using the command line, I connected to one of these boxes over ssh and ran a series of commands to detect the bug and dump details of what happened. Then, I took all those commands and turned them into a onliner that I could pass in over ssh, so I could get everything I needed for an individual maxhine. I then used xargs to run that command in parallel over every single one of the systems my code was running on and in the end, I was left with a nice directory of files whose name was the IP of an affected system, each filled with useful information. I started by manually running command over ssh, but the composable nature of the shell allowed me to transition that into a script in a matter of minutes.

        I provided a more residential example of why I exclusively use the terminal for file management in a different top level comment.

  • aesthelete@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    5 days ago

    Unless we’re in a simulation, very yes.

    Normal people don’t seem to realize this but the reason developers swarmed to Mac OS X over Windows when given a choice for work laptops is that Mac OS X has a built-in POSIX shell.

    CLI is and will always be more expressive than a GUI. Some “web apps” have even tacitly acknowledged this by adding terminal emulators to their web apps.

  • medem@lemmy.wtf
    link
    fedilink
    English
    arrow-up
    10
    ·
    6 days ago

    A command line is WAY faster than using the mouse, provided you can type fast enough. A thing I’d like to add is that, to me, all those shiny pointy-clicky interfaces are little more than a distraction: they literally slow me down and prevent me from doing real work. Of course, this last bit is a very personal opinion and YMMV.

    • dandelion (she/her)@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 days ago

      this, I hate using GUIs - they’re slow and inconvenient in so many ways

      also, terminal commands can be thrown in a script to easily automate or schedule tasks, unlike all that manual clicking in a GUI

      • medem@lemmy.wtf
        link
        fedilink
        English
        arrow-up
        2
        ·
        5 days ago

        Exactly. I always joke, even at work, that if I was a dictator, I would be a pretty eccentric one. Jailing political opponents? What a waste of time and energy. Repressing minorities? Couldn’t care less. Curtailing women’s rights? Nope. Centralising the economy and giving friends and family juicy government-backed contracts? Nah, that’s not me. But I WOULD make EVERYONE work from the command line lest they’re willing to die at the stake.

  • chloroken@lemmy.ml
    link
    fedilink
    English
    arrow-up
    9
    ·
    7 days ago

    Using the terminal doesn’t make normal people feel superior, it is simply more efficient to type commands than click UIs.

  • awful_neutral@mander.xyz
    link
    fedilink
    English
    arrow-up
    2
    ·
    5 days ago

    The terminal makes many functions easier and faster, it’s more consistent across updates and changes, can be automated with scripts and is much easier for developers to implement into software than a GUI

    There’s a learning curve, but there are real practical reasons for someone to use it over GUI

  • Badabinski@kbin.earth
    link
    fedilink
    arrow-up
    6
    ·
    7 days ago

    My work and personal computers typically have two applications open—a web browser and a terminal (well, really a shitload of terminals). I don’t have a desktop, I have a terminal. I don’t have a graphical file manager, I have a terminal. I’m not doing this because it’s cool, I do it because it’s efficient as all fuck and makes it trivial to fire off one-liners to automate shit.

    Like, I stream a certain video game competitively, and I need to keep recordings if I want to submit runs. I started off recording my gameplay using x264, and the file sizes were too damn big. I tested various av1 options out using ffmpeg on a small sample clip, and when I was done it was simplicity itself to just do this:

    # I'm typing this on my phone so I'm not going to write out the ffmpeg args
    for file in recordings/*.mp4; do ffmpeg "${some_args[@]}"; done
    

    I didn’t have to learn some stupid GUI batch processing thing. I didn’t have to install any extra tools (since I already had ffmpeg). I just took my command, substituted the input and output files for variable names, and looped that shit.

    I feel that the command line is the most efficient interface for a huge number of tasks. Discoverability is awful (although improved with good tab completion and just reading the fucking manual), but the efficiency and composability of a CLI built in the Unix tradition is hard to overstate imo.

  • jjjalljs@ttrpg.network
    link
    fedilink
    English
    arrow-up
    5
    ·
    6 days ago

    Sometimes it’s easier to type cd ~/D{tab}/M{tab}{enter} open . than using the GUI.

    Plus all the fancy stuff that people do with scripting

  • well@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    6 days ago

    I know people who work in windows environments as developers or admins using power shell a lot. They can automate sooo many things through scripting. I work in IT too but this advanced scripting shit is still witchcraft to me. But this is real world usage which makes digital infrastructure management work a lot more efficient. Especially if you have repetitive tasks say on different machines. With GUI you would just be clicking through the same shit over and over again (while slowly loosing your mind).

    • some_kind_of_guy@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 days ago

      Hey it’s me! My job is basically spending hours per day writing automations in powershell. Our prod environment encompasses thousands of servers + separate windows server environments for testing and Dev.

  • dumples@midwest.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 days ago

    GUI change but the command line lasts forever. The GUI will change from version to version for any program but if you have a script or CLI that will last.

  • ArcaneSlime@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 days ago

    Used the terminal yesterday to search my piracy drive full of movies and shit in a directory structure, find any duplicate files by size/md5, and then it piped the results into my terminal editor of choice where I commented out the lines corresponding to files to delete, then it deleted them for me. Saved a couple hundred gb, and idk how to do it through a gui (besides the insurmountable task of clicking through all those folders.)

    Not only that, but turned out I had a bunch of dups in my image folder too that I wasn’t prepared to deal with right then, so in vim I just :/folder and n n n n repeatedly to get to the next relevant entries, made it even faster.

    Took maybe 5min (not counting wait time, I ran it, made dinner, and came back and it was ready for me.)

    Now, I’m going to peek at that forgotten picture folder in the GUI because I have NO idea what’s going on there and it’ll be helpful for me to get eyes on it instead of reading filenames, so I do use that too, for me it isn’t all or nothing, it’s both, some things are just better CLI and some are actually better GUI, and some can be either depending on how I feel today.

  • jj4211@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    7 days ago

    Cmd was torturous and powershell not much better.

    Some things are just massively tedious to do through any gui. Sometimes the converse is true.

    One reason why LLM is desired as a ui element is that you can describe what you want in text without having to remember how to navigate a bunch of convoluted ui elements. CLI is related, except more precise but more demanding on specifics of input.

    • BCsven@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 days ago

      Powershell is actually really good a manipulating large amounts of data and outputting it how you want, the trouble is the commands are too lengthy and convoluted to remember, so I have to check web sources. While Linux commands are simple and short.

      • jj4211@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        6 days ago

        It’s certainly capable, and has a more structured pipeline structure saving you in theory from awkwardness of grep/awk sorts of ‘processing’ that may be out of whack. It also has a command model where whether you are calling cmdlets or .Net functions, it’s lighter weight than a typical bash interaciton that has to fork/exec every little thing (and the ability to invoke .Net functions means a lot of capabilities that are normally not directly available to something like bash).

        However, from a user experience, it’s got a few things that can be a problem:

        • It’s a bit too ‘programmer-y’, and particularly maybe a bit too perl-y. Some of the same criticisms of how perl can be a bit of a mess carry over to powershell.
        • It’s ecosystem is mostly just whatever Microsoft gives to you. The *nix side of the house has had a diverse ecosystem, but Microsoft is largely on their own. Good hooks into most Microsoft products, but not a whole not of third party enablement.
        • Other shells have better and/or richer UX, like fish
  • schnurrito@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 days ago

    depends on what you want to do with your computer? If you want to deeply get into the internals of your computer, including writing your own software, then you’ll probably have to touch the terminal at some point. If all you want to do is web browsing or photo editing or something, then you might never need it.