Why do you use the terminal?

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

iiGxC, (edited )

If I don’t know how to do something in gui: maybe click around or google it, it takes a while

If I don’t know how to do something in cli: command --help or man command 90% of the time I find what I need right away

knobbysideup,
@knobbysideup@sh.itjust.works avatar

You can easily pipeline simple things to do more complex things. That’s the point of written language.

lightnsfw,

Because my first deep dive into Linux was a server I built that I didn’t install a desktop environment on.

MangoPenguin,
@MangoPenguin@lemmy.blahaj.zone avatar

Because I have to for some things. If I could never see a CLI again I’d be happy.

DumbAceDragon,
@DumbAceDragon@sh.itjust.works avatar

Just faster. Often I can just enter a simple command before the GUI version even has time to load.

lurch,

I don’t actually use it that much to input commands, but many scripts I made pop one up to show details of what’s happening, e.g. how opening the VPN connection is going, what crypto module it’s currently loading or how many more iterations a macro will do.

wgs,
@wgs@lemmy.sdf.org avatar

For style points at the office.

callyral,
@callyral@pawb.social avatar

Not having to go through a bunch menus to do stuff, not using the mouse, having –help for commands…

Or just for simplicity. For example, I use simple commands to manage my files: mv, cp, ls, rm, mkdir, etc.

There’s also Neovim, my preferred editor, which runs on the terminal.

I prefer to use GUI for visual things, like drawing, since that’s what it’s best at.

hperrin,

My server doesn’t have a GUI, so the terminal is what’s there. As for my desktop, terminal is just easier for some things. And for my own stuff, it’s easier and faster than building a GUI for all the things I’m doing.

Drito, (edited )

I do a bit of programming. Git help is about terminal commands. There are graphical front ends but I have to learn how to use them. I use terminal also for package management for the same reasons.

richieadler,

I’d say is similar with any source control software. It’s the same with me and Fossil. (And, granted, there are less plugins to support Fossil in IDEs; the one in Visual Studio Code/Codium does OK.)

vzq,

The terminal is the entire reason I use Linux. All the GUI stuff on Linux is average at best. The terminal is ⭐️ ⭐️ ⭐️ ⭐️ ⭐️

pixelscript,

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.

wwwgem,
@wwwgem@lemmy.ml avatar

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.

onlinepersona,

Because GUIs on linux don’t do everything that the CLI can. I use my computer for more than just browsing and editing documents, so the GUIs that do just that, don’t cut it.

Also, I’m on NixOS. There’s simply no way around the terminal - sadly.

CC BY-NC-SA 4.0

mutter9355,

Mentioning you’re using NixOS is slowly becoming the new “I use arch btw”, isn’t it?

mcepl,
@mcepl@lemmy.world avatar

Yup, and “I use Gentoo” before that.

onlinepersona,

I’m not saying it as a source of pride. It’s incredibly annoying to me that I need to edit a file in order to manage my system instead of having a GUI like KDE’s to manage all the settings. On NixOS, there’s just no way around that at the moment.
Unfortunately, I don’t know another somewhat sane declarative distro. Do you? (No, not GUIX. That’s just NixOS with a ton more brackets and less packages).

CC BY-NC-SA 4.0

crony,
@crony@lemmy.cronyakatsuki.xyz avatar

I’m just faster in the terminal than a gui

platypus_plumba,

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.

crony,
@crony@lemmy.cronyakatsuki.xyz avatar

there is always fdisk, the tui parition manager.

helenslunch,
@helenslunch@feddit.nl avatar

There’s no way that’s true unless the GUI is straight garbage.

southernbrewer,

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.

helenslunch,
@helenslunch@feddit.nl avatar

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

crony,
@crony@lemmy.cronyakatsuki.xyz avatar

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.

helenslunch,
@helenslunch@feddit.nl avatar

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.

crony,
@crony@lemmy.cronyakatsuki.xyz avatar

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.

helenslunch,
@helenslunch@feddit.nl avatar

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…

crony, (edited )
@crony@lemmy.cronyakatsuki.xyz avatar

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.

helenslunch,
@helenslunch@feddit.nl avatar

That’s unfortunate for you but really besides the point.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #