One more advantage of the commandline is the ease of explaining how to do something complicated: "Here are the commands, paste them into your shell" can often be easier than a series of screenshots (which may be out-of-date) or an explanation of "here's roughly where that button would be, three menu layers deep".
All those In house tutorials with screenshots are still on Windows XP...... When people just google the solution and never bother to update the documents
People say doing anything on Linux is difficult because of command line. You can follow tutorials by literally cut and pasting some commands. It doesn't get any easier.
Yes, this is one thing another didn't touch on. The interface is extremely flat you can get to any command quickly, if you can only remember the command. (some newer cli interfaces make use of sub-commands which help reduce cognitive load similar to the tree menu system).
@@WorBlux and that's frankly just limitations of the most common CLIs, not something inherent to what a CLI is. Modern operating systems have a concept of "push button, start typing, receive command autocomplete", and there are probably many shells which do the same and then some. And as a lightweight version of that - tab-completion, especially with modern extensible tab-completion for subcommands.
Never have something been so true like the comparison between GUI features & command line flexibility, learning how to use FFMPEG in the command line & batch scripts has been a game changer for me
I Still use it, all these new developers think the command line is a single command issue interface, until I showed them how to use for loops with subroutine calls, with delims and tokens, redirection, stdout and stderr, issuing sql calls via sqlcmd, file parsing, etc. they could not believe it, and all quite simple. They said “how are you doing this all out of your head ?” I said “Well, using it since he days I was a Novell Admin, then went the Sybase / Oracle DBA route on HPUX and AIX, then went to ksh and csh, then back to Windows for SQL Server, etc. a long road of fun fun fun.
I used ffmpeg because i couldn't find a good free video converter that supports most formats, they are all paid, 10 years ago there were a lot of free software but they are outdated now because they don't support new codecs and resolutions, i probably should make one myself when i will be able to do that
The most important reason however is that commandline interfaces are vastly simpler to make. Therefore they are far easier to maintain and more stable and secure. They provide a sane place to start with the system, and on linux, the only universal way to configure things. Making gui tools the primary configuration tool for a system, is genuine structural insanity.
@@entelin yeah very stable. Config options are covered by point 5. It is possible to have something like the Windows settings app (search, tabs, menus, submenus etc) or something like the online PS1 builders but that's a ton of UI effort which isn't worth it. As much as I love UI, having a list of every flag that's in the man page in a UI form would be harder to use than just typing
agreed. he's gone from being shy on camera during his new employee probation & first videos, to being one of the most liked hosts across the LMG channels.
I would like to add. Linus Sebastian is a very good business owner. He spots; hires and then exploits (in a good way) raw talent. I would imagine he is very proud of his work force. They all seem to step up and shine. I'm sure Linus knows if he can keep developing the business pretty soon Yvonne and he will be able to step away and pursue other endeavors. This is what a growing successful business looks like.
@@Jesse-2531 The first character after the Windows/DOS COLOR command is the background color, and the second character is the foreground (text) color. "F" indicates bright white. "0" indicates black.
Since Linus and Luke are switching to Linux and Anthony is obviously going to play part into helping them, it'd be cool if Anthony made some Linux basics tutorials, tips and tricks for the rest of us to watch and learn while teaching Luke and Linus.
Also keep in mind that a GUI requires a LOT more additional work for the developers. As a result, there are a lot more tools that can only be used using code and/or command lines that simply aren't available using a GUI.
Because I don't want monitors on 4 of my servers. I spose there is VNC or teamviewer, but After switching to Linux about 10 years ago, administration via a terminal is a lot easier for me.
I miss one reason in this video: SSH. It's so much easier to just SSH into anything from any device, like when I don't have my laptop with me I can still SSH into my server with my phone. VNC Viewer works but it's just not made for a small display. SSH doesn't care. Also, 'sudo apt update && apt upgrade' is a reason in itself to love the command line.
you meant "&& apt upgrade" :) (no point redownloading the updated package infomation twice :) ) Ya, it is so convenient being able to just do a quick SSH using any device, on mobile internet, and just check if the system has completed what it needs to complete
That's a reason to like package managers, because if this is possible with 1 command in a command line it could be just 1 button in a GUI or even a keybinding. Man, I hope Microsoft will make winget into something actually good
@@duckmeat4674 So you would be happy if guis ceased to exist? I installed arch Linux, and I would say no. I use a graphical text editor or ide. I compile/run things as well as many other chores (ie moving files, etc.) using the cli. I use a graphical web browser to access stack overflow/reddit to solve bugs. That's not unusual. I am also a bit of a gamer, and a video editor. Those don't work too well in the CLI.
@@realtechhacks I use man pages for documentation, vim for writing code, maybe ill query stackoverflow for answer, and CLI for folder management. Arch was easy to install and I have a script for reinstalling it even
To me, it's EXACTLY the same question as why code based programming still very much dominates in general: it's indeed it's customizability & flexibility. If programming code and shell interfaces where not as very useful as they are, they wouldn't be so heavily developed as they are! For the same reasons "low code" programming solutions don't really win the battle in gereral. If they were more useful than code, they would have already been much more popular and dominant than they actually are! In reality those solutions are only used for simpler, more standardised, more predictable tasks. I personally believe that code will never disappear. In the future, if GUI's get more advanced, so does code as well! Code will always be most flexible for complex tasks.very much dominates in general: it's indeed it's customizability & flexibility.
id be careful about assuming that things which are more “useful” will inevitably be more popular also i wouldn’t call it a “battle”, each tool has its niche, use whatever fits the job
@@5cover spaghetti code but visualized that would be terrifying. Although honestly python like syntax might be the future rather than visual scripting. It’s like looking at old predictions of flying cars we don’t realize that visual scripting has more problems than our current programming languages.
LCNC definitely has its uses. I don't think it's really that low code is intended to replace coding, it's got a different purpose, same that both GUI and CLI exist in parallel. I agree, there's lots that you wouldn't want to do in a low code environment. Equally, not everything needs to be fully scripted or customisable. Be led by the problem not the tool
It's not only this, but for the business environment, it's way cheaper in terms of network traffic to interact with a CLI rather than a GUI. In some scenarios it's even critical. What if the network if flooded by a faulty device or an attacker? Try sending and entire "movie" just because you want to click here and there to see what's happening versus sending some bytes of texts that represent the CLI commands.
So much this. It's also much more lightweight, and command line programs like ffmpeg can easily be integrated into other applications. You can't really do that with GUIs.
Agreed. Super fast & easy to develop command-line interfaces. I use command args all the time for my programs on Windows at work, and on Linux for my Raspberry Pi programs at home. Very friendly for when your program is being run by other programs or the OS too.
@@robbietorkelsonn8509 It depends on what kind of software you write. I've once written a tool that helped me visualize some data for a certain problem, and that wouldn't really be feasible as a CLI program.
loaded 'fish' on my linux machine. very very nice shell. it's like nice little additions that would have made bash even better. highly recommend checking it out.
It is funny, but you're probably using a bash shebang in your scripts anyway. I've used zsh for years for fancy prompts and plugins but I wouldn't say I "know" zsh, maybe that's pretty common?
A major benefit with terminals is piping one programs output into another programs input, technically making another program from a pipeline of programs. Another benefit is that, a lot of shells (ZSH, Bash and Fish for example) can automatically expand parameters, like paths with globs and other patterns.
A CLI also allows for much better and easier reproducibility in general. Sharing a command is much easier saying "type ssh user@machine, then your password" than telling somebody "click here, then that menu, type in the hostname, tick that box, click that button". Now whilst GUIs allow users without any or very limited knowledge to navigate around a program without potentially breaking something, the CLI is much more precise. Want to copy every file that ends with .jpg from one folder to another? Takes you one second on the command line. However I can appreciate both - as somebody who works with cloud services both the web UI and the CLI have their advantages. Especially if I'm only learning how to do stuff the UI helps me out by showing me all the things that I absolutely need to provide when say, creating a new virtual machine. Easy to use text boxes with helpful descriptions etc. It also helps me stay on top of things like resource utilization. However as soon as stuff needs to be reproducible by somebody else, writing it down in CLI commands makes things so much easier.
As a developer, the command line is not an option to do something quicker, it's an absolute necessity. I have yet to come across a GUI for node that made any sense whatsoever.
Well, a GUI is utterly amazing for displaying options and objects that the user may not know exists or simply doesn't remember. It's also far more intuitive than a CLI. But if you know what you want and exactly how to do it, yeah, a CLI will run right over GUIs for almost everything. I like to think of the CLI as very quick programming. It can do whatever you wish and do it quickly if you know the phrase to type in. If you don't though, well... Good luck. :)
@@mayurga8956 the best way is to find a repetitive tasks you do that you can automate. Figure out how to run it from the cli, then how to write a script to make it easier.
Interesting quickie, especially after that story about a whole class of engineering(??) students who didn't know how the file directory structure works and couldn't find their work they saved.
Man, I've actually had to help students find files before, and it's a bit groan inducing. They would especially get confused when they had to use Citrix to launch an app (like Excel) and didn't understand the difference between the local machine file system and the virtual file system. I've literally had to remote into their desktop to poke around in their file system to find their home directory for them and they act like I'm a tech wizard for finding their files, lol!
@@andmicbro1 It's just how you learned it (or got used to). That is the thing I totally hate about all those "library" and whatever stuff and that it takes several clicks in the explorer (and it's on the down side) to just get onto C:\ I mean I have a structure I am used to for 20 years. I know where to put my stuff and where to find it when Windows borks itself up (admittedly has not happened with Win10 so far) and I need to copy it with a live Linux.
The command line is simply an easier solution to certain problems. Even for basic use, "command line" does not automatically mean "harder/more complicated than the GUI version". Even with GUI package managers on Linux, I'd rather just fire up a terminal and type "sudo pacman -Syu" away much quicker than the GUI's window could even show up.
in windows (can't speak for any other OS) it would be faster to just win + pacman + enter than win + R pacman + enter. Actually, now that I read that I take it back. Although you might have to do some CD in the command prompt.
Bash is so powerful, that I spend 95% of my time in the terminal. It has even gotten to the point where I open a terminal when I am not sure what I should open!
Because it's extremely easy to keep a command line interface up to date, the people programming the GUI and every other part of the OS use the command line during development (and probably for everything else), and there are a whole lot of us who still find huge value in skipping the limits of the GUI and getting things done the old fashioned way.
At work, we're actually planning deployments of CORE windows servers with zero GUI. GUI is not just additional bloat, but also opens attack vectors for hackers.
Use bash everyday for work, usually just to tail log files of our software while recreating an error but it works for me, keep up the good work Anthony, love when you host
When I tried Linux I realized how although there's a much higher barrier to entry for using command lines instead of GUIs, while the commands themselves are hard to understand, you don't have to memorize them - you can always search or save & refer to them - and it's so much easier to debug error by just pasting/entering a command and hitting enter instead of following a long article with 15 steps of what to click and what button to scroll down to & hope everything you see on your screen is the same stuff they see (GUIs get update fairly often, command lines are more or less fixed) So tl;dr: they exist coz they're better, they're just harder to learn, meanwhile a *good* GUI can direct your eyes naturally to what you should click instead of requiring you to learn beforehand, too bad not that many GUIs are good lol
Two commands will change your life: `man` and `apropos`. `man` will render and display a manual page, some leave a little to be desired, others are fairly comprehensive even going so far as to provide examples of what arguments to use to accomplish certain common uses. While `apropos` lets you search through the manual pages if you don't quiet remember the name of the command you want to read the manual of. GNU adds a whole information pages system through the `info` command and many applications under the GNU umbrella focus on providing comprehensive info pages rather than man pages. It is a little more advanced but I appreciate the simplicity and consistency of the traditional man page.
Einstein was once asked what the speed of sound was. He said he didn't know. When asked why he didn't know this fairly basic fact (about 300 metres per second is memory serves) he replied he could look it up if he needed it.
Instead of finding an article that tells you what to type into your terminal and hope it works for your distribution of Linux or Windows. Give me a break, why are you all being disgenuine? As if you have never found commands that are outdated or don't work for your particular distribution. Not to mention 95% of users have no fking clue what the command does, they just blindly copy-paste it.
@@ararune3734 What is this in response to exactly? I thought people usually include their OS version/distro in their search queries when looking up help. And the not knowing what you're doing is common either way; when using GUIs most people will just follow a _how to_ guide online, most people I know (even engineers) aren't comfortable enough poking around the OS and Microsoft for e.g. still does a terrible job at describing what things do in the UI I imagine most low level debugging info will also always stay behind terminals since it can be really dense & is rarely needed if at all Yes, Linux's dependence on the terminal is usually a copout for its lack of everything, but the terminal is useful enough that I don't imagine any time when it won't be available, to go back to the video (devs also need to use them). Terminals are also becoming more modern in diff ways
@@ararune3734 haven’t really shared this problem if you know what the commands do you’ll probably be fine. Some people just blindly copy commands, but that doesn’t mean everyone does. That’s usually for installing things, but you can’t almost always find what your looking for on the aur or GitHub. I don’t see how it’s disingenuous to like the command line when many of us use it daily. If you know a bit of command line then you can probably automate tasks through shell scripts with minimal ease. Also windows command line and power shell is horrible usability wise. I think this criticism is valid in a few cases and I know a lot of people like this. I have a pretty minimal tiling window manager setup and I work a lot in the terminal, but I have friends on pop_os and other very well configured and easy desktop environments and they tend to blindly execute commands. These people tend to use the terminal for grunt work and neglect how useful it actually is, but the figure of 95% seems extremely hyperbolic
Automation is for me the most important. Want to do some complicated task? Throw it in a script file! Even running it once per month becomes a breeze, because you don't need to remember to take all the steps you made in a GUI. Just rerun the script you made! Get it peer-reviewed! Run it via Cron (on Linux) to run it on specific days of the week!
@@elliedamitz8876 but it takes more work for your computer to run it! might not matter on a workstation, but on a server expected to serve millions of requests a day it really matters
@@elliedamitz8876 Bruh, tell that to normal office workers back when microsoft dos was king and lotus was still a thing. Those are normal people, they just learned different methods.
Apparently not these days. Modern UX development: - Enable hilariously large font faces - Throw around sparse controls with lots of wasted screenspace - Profit
@@elliedamitz8876 except no. Windows Gui is light-years less powerful than a normal bash window. If you care about lowering your volume, sure Windows has you covered. If you want an automated workflow for testing, development and production, well good luck. Windows has everything that needs to be done from time to time by the average user, nothing else.
@@elliedamitz8876 uhm... no. As a sysadmin having to deal with both windows and linux servers... windows are slow to work with, prone to failure and worst of all, requires a freaking gui. 😑 Commandline is your friend through thick and thin when you have to get things done.
Presenter Anthony: "Why do Command lines still exist?" Anthony's Unvoiced Thoughts: "The same reason why you wrote a script for this video instead of drawing a picture. Sometimes words are more efficient." Taran: "I wrote macros to write words and not draw pictures to make this script."
Not mentioned: Try to reliably record and document a long sequence of user actions in a GUI. Try to follow some youtube instructions and see that the options they describe do not show up for you because you have changed some display options. That never happens in command lines. I can send you a script of command lines to do very complicated and long procedures that will work. You couldn't do one-tenth of that with a GUI. Also not mentioned: Suppose you have gone through a long trial-and-error process to get something done using command lines. You can list the history of commands, edit out the steps that didn't work, and save the final perfected process in a file to repeat when needed. Command lines rule!
I’ve been learning and using the command line for 7 years now. It has become so much easier and quicker to manage and do everything from the command line now. GUIs generally feel like a hindrance most of the time
@@cristibaluta I use it to convert music files, sometimes even convert video, program, write (AsciiDoc markup language in vim), manage my own computers and servers, download stuff, read RSS feeds, I browse/copy/move all my files on the command line (I made a shortcut to do cd & ls all at once so it's faster and easier to navigate)...that's all I can think of off the top of my head
@@cristibaluta thanks! :D haha. Yeah, I'm sitting here reading an article about interprocess communication via message passing systems in DragonflyBSD and what the heck a clustering system means while I'm on-call and on standby
@@classicrockonly None of what you described requires a command line or in any way more advantageous than a normal GUI on any machine that has specs better than a baked potato (or when ssh-ing to a headless server). All of this seems like forced usage of cmd to look cool or whatever. Command line only truly makes sense when you have some repititive tasks on a large number of files and you can use some sort of pattern/regex/loops to automate that. Even that is fairly easy to do on most GUI file managers.
Ooooh.. Been there and had a to use a tablet to get the vital forgotten info to input in to sort a PC out once. Ironic really, having to use a bloody tablet to get info!
@@reggiep75 i tried windows 11 and went back to 10 and the installation was corrupted and a lot of stuff was missing, had to use cmd to reinstall windows 10 entirely
and why do some people assume command lines shouldn't exist. One popular reason is they are a group who thinks 'out with the old, in with the new', regardless of why. one good use could be to build new mini gui's using the command line, instead of writing pure code doing operating system calls.. that's just on top of even more reasons to keep it. Also, being that it was around since the start, it doesn't use up much memory or tax the cpu differetnly
GUIs are also relatively heavy on resources, even the lite ones. So on server machines/vms, we opt to not use a GUI at all. If you need to do something on a server, you have to do it through a shell (command line), typically via SSH. The exception here is Windows Server, which is a resource pig.
People are just showing appreciation for actually having a guy with a lot of technical know-how on a show about technical know-how. Though I agree, I think Anthony would be a lot more happy if people focused on the content he spends time producing, and not just himself.
Stop pulling Anthony into half-assed tech support challenges and give him his own channel already! I'd watch "Linux Shenanigans With Anthony" all day long.
@@elliedamitz8876 if you want to move files around to many places, making a script or three that do the tasks than error prone manual work in a GUI. Synchronizing source, deployment of files, moving files to places where they can be tested, etc. I know how to use a GUI, but for tasks I do several times, I prefer to make a script that do the tasks.
When I started to learn my firsts command lines on linux, I felt powerful because you were able to do a lot of things in a fast way without having to need the GUI.
Many dev tools were available with a CLI first, those tools are now either available as plugins in IDEs or standalone with CLI. For me personally it’s easier to just use the tool separate from the IDE because they tend to screw with it and I don’t have full control over what’s happening. Also, seeing that Docker Desktop is now licensed, I can just uninstall it and switch over to CLI on the docker engine.
Anthony should do a walkthrough of the official Arch Installation Guide, step by step. Would help make it less intimidating to noobs. Addendum: the OFFICIAL guide. Anything other than the official guide, to the T, will ruin any chance of help being found. RTFM.
@@tukuiPat the larger audience, but also the larger amount of resources they have to do it clearly and concisely, while covering common possible issues that may arise, and best practices when diving into this deep-end.
@@lodestarsd4456 yes, BUT the distros for noobs are all pretty much plug-and-play. Most distrobutions people will be exposed to will either be in the "hand-holding" camp or the "good luck!" camp. If they can't figure out the former, then I doubt they'll even consider attempting the latter. If they don't try to pull and Oprah with Arch and pose it as an "everybody" solution, I don't see anything inherently wrong with it.
Personally, I'd recommend a Manjaro walkthrough. The installer is as easy as any other Linux distro, and once it's installed, you are effectively running Arch. In fact, a walkthrough of Manjaro on a Raspberry Pi would be the least intimidating to would-be Arch users.
One of THE use cases is ffmpeg. There's a magical ffmpeg command for anything video, even doing things such as converting playstation video files to something a modern video player can use, to more mundane things such as creating webm files out of whatever you can toss at it or..
@@henlofren7321 but often miss features, or have missing support for them. And it's way easier to re-encode a bunch of files. Ever re-encoded 20TB of movies with a gui? yeah, nobody ever has done that or will do it. But with a script? probably hundreds of people.
@@RobinCernyMitSuffix They also have a space to add commands that aren't accessible through the GUI. You can queue up however many videos you want, file size isn't the issue if you limit the amount you're processing in parallel. If you're writing scripts you don't need a GUI, that should be obvious. I'm not proposing a visual programming language here, although it would be an interesting idea to implement...
since i switched to linux i've been using the command line for most things, it's faster most of the time, more consistent, more efficient, and it's really not hard at all, unlike what most people think
Most people don't think it's hard, most people think it's tedious to have to learn how to do basic things. Give me a new GUI app and in 10 seconds I'm doing the thing I want and can get back to it instantly. CLI? /help, /?, command /?, command function /help, command function -attribute /help, command function -attribute (sorry you need to be admin) close CLI, open as admin, command function -attribute (now it does the thing) and then the next time I need to do it? command function /help
All of these reasons ultimately stem from the fact that it's a lot easier to create a good text interface than it is to create a good GUI. There's no reason you can't provide automation, a large feature set, and portability with a GUI. It's just really hard.
The problem is that even if somebody _did_ implement the headline features in a GUI, it'd still take longer for the user to achieve the same tasks compared with the command line. For example, consider pipes - implementing that in a generalised way in a GUI would be a horror show. On the command line, it's as easy as typing one character (admittedly, one which the average user wouldn't be able to find on the keyboard...).
One big point for CLI is development time. It is so much faster (often two times and more) to implement a basic terminal tool instead of wrangling with GUI/UX and a lot of stupid non-issue tickets (GUI tends to attract "noobs", while CLI attracts more tech savvy users who generally give much better, actionable, reports). For advanced users it's in many cases better to NOT have a GUI, but instead have much more features and detailed options. Or as an author of a CLI tool, let other programmer develop a GUI frontend on top of your project.
I use CLI’s daily, so I’m not surprised that they still exist. I just wanted to hear Anthony’s take on them. The only terminal interface I don’t like is the default Korn Shell in RHEL. If the up arrow doesn’t cycle through your previous commands, then you’re in Korn Hell, and need to switch to Bash immediately. Luckily it also comes with RHEL, so I don’t know what sadist picked it to be the default.
Yeah, Idk who (outside of sysadmins for legacy systems) would subject themselves to that. Although, Zsh takes some features from Ksh, so I hear. If you're not trying to be maximally POSIX-compliant, I recommend Zsh.
@@seanld444 I'll have to give it a try, because I just read a brief article that compared all the various Linux shells, and Zsh sounded interesting. It's obviously much newer that bash or ksh (albeit still pretty old being from the 90's), but it sounds like they tried to combine the best of both. The only other shell in that listicle that caught my eye is something called fish, which the developers described on their website as "Finally, a command line shell for the 90's" which is funny because it was written in 2005--so whoever is behind it has a sense of humor I can appreciate. It also supports the "astonishing 256 color palette of VGA" and a handful of other features. That said, I question the accuracy of the listicle, because the author didn't disagree with the proponents of ksh when they cited "an easier way to repeat commands" as the reason they feel it's superior--when there is literally nothing simpler than just using the up arrow on your keyboard to scroll back through your command history. The handful of times I tried to use ksh that was such a turn off, I never even bothered to figure out how to repeat commands using whatever crazy method they came up with. If they had used the up arrow for something else that was equally useful and/or obvious, then I might've given it a shot, but they instead opted to break from a long established paradigm for something infinitely less intuitive to use. Anyway, thanks for the recommendation!
@@kernelpickle I didn't know about that fish slogan haha. That's great. Another TH-camr I watch (Luke Smith) did a review on fish which left a slight sour taste in my mouth, as there are some things I'm not particularly a fan of. Zsh seems to be the most "modern" shell that doesn't give up too much on POSIX-compliance, while also provided lots of niceties. Two of the best niceties in Zsh: Rather than typing `cd ..` to go up a directory, you type `..` and done. That works for most directories. As long as there is not a command in any of your PATH directories that has the same name as the directory you're trying to cd to, you can just type the directory name, and it will interpret it as though you were trying to cd into it, rather than run a command of that name. If that makes sense. I love that. The other feature is a plugin that I got from oh-my-zsh that actually adds autocomplete functionality to the shell. Partially type a command, hit tab, it will cycle through the commands that match what you typed. For some supported commands, hit tab when entering arguments/parameters, and it will show you a list of arguments and their descriptions. Admittedly I have not given fish the benefit of the doubt and tried it, yet. But Zsh mostly fits every use case I need.
@@seanld444 Well, autocomplete sounds like a nice feature worth adding. I haven't had a chance to actually try out zsh or fish yet, but I did spend some time checking out the fish website. I'll have to check out that video you mentioned, so I can get a more in-depth look at it. That said, if I'm being honest I'll probably do a ton of research and just end up sticking with bash anyway, because I just don't do enough scripting in Linux to see the benefits of switching shells. Whenever I get into something where I feel like I need to write a script, I usually write something in Python. Thanks for the info though!
I would just like to plug the awesome Windows Terminal here. It is really great, a terminal every windows user should have. (comes with built in support for cmd, ps, WSL(bash, zsh), and literally any other shell you want to use). Also it improves the user interface by miles. Just because it's a command line doesn't mean it should look bad and not 'modern'!
@@liesdamnlies3372 nah they mean the windows terminal which is the UWP terminal app, only benefit over powershell is you can run multiple instances in 1 window
@@liesdamnlies3372 OK so there is command prompt and power shell then there is windows terminal which let's you run power shell, command prompt, azure, and wsl instances in 1 window so basically windows terminal is the best feature wise even tho it kinda ugly cuz uwp moment
Because you can often do more in them with less overhead (so much less of it in fact that you can reliably work on a completely different machine which is somewhere else in the world entirely even and hardly even feel the difference)? Also whatever it is you end up doing, you can just save your constructed command as a simple script and do that thing even faster the next time, just as accurately - you can even have that script run automatically should you so choose with no issues at all. Trying to do that in a GUI is asking for trouble. Who even would ask this question? Even those who would never actually touch the command line would likely go "it's there for tech wizards to do tech wizardry with probably and that's why it's around".
@@tunahankaratay1523 Yeah, but there was a comment from someone on the LAN show saying Linus should run Linux all from Bash. I just think it'd be cool if Anthony tried out something like i3/Qtile/StumpWM and used it as part of the challenge.
I love working in the terminal/CL. I use it for work all the time. It feels closer to the things you are trying to do, instead of interfacing with GUI abstractions. I wish I knew more commands and tools, honestly. The CL world could benefit from more “first time user” content. A man page isn’t the best place to start.
You forgot to mention server systems. Unless it's a Windows server, you won't find GUI in most of them. Everything is done in command line, remotely. Text mode makes work very quick and efficient, even when you are connected from the other side of the globe... from your phone... over GPRS... Scripting is a big thing there too. Command line will stay with us forever or until we get neural links or some other, fantastic technology. And that is not a bad thing, at all. Command line is very powerful and I can't see how GUI could even approach that level of flexibility. That does not mean graphical interfaces are useless, of course. There's a lot of tasks, where GUI is the only sensible option. And sysops also use graphical environments to work with multiple command line windows at once, which is pretty normal stuff when you "op" the "sys"es ;)
Loved the fact that somebody put background fan noise when the image of a guy in a data center popped on the screen. The attention to detail is awesome :)
In other words, when all you need can be performed with the mouse or your touch, using shells makes no difference. But if you need to perform specific tasks with precision and control, that's when the shells really makes difference.
The end result may be the same, but the way you get there is much different and the amount of tediousness and repetitiveness can vary greatly (usually with the better option being a TUI/CLI). Using the CLI will also virtually force you to adopt a better file-naming standard (with how wildcards work) if you didn't already have one (i.e. no non-descript IMG00049.jpgs), which will save you time in a GUI or a CLI.
I think its only just familiarity - everyone I know who is skilled enough with command line will enjoy using it over a GUI if possible. But knowing everything from selecting your Bluetooth device to running data analysis is a long journey.
The biggest upside to using bash, zsh, etc is that remoting in to a machine is a lot easier. At my work, we never build our packages locally, but use a powerful server to build and develop our products.
There are more reasons: They're great for remotely administrating machines with low speed connections, or which are on the other side of the globe and have more considerable latency, and they can be used on embedded devices that do not have the capability to run a full GUI.
@@eccentricOrange Not necessarily, that's one way to do it, but there are a variety of ways to get access to remote command-lines. Some software exposes it through a browser, embedded devices and even headless servers often do it via serial port, serial port emulation over USB... devices like routers allow you to telnet in, yet others have desktop software that allows access... I'm sure I'm only touching the surface. One of the cool things about terminal ("command line") access is that it's so low-overhead and simple you can do it in many different ways.
@@Chatsu8o well I should have been specific, my bad. Of course I realise there are multiple ways-I myself use Serial and SSH for my Raspberry Pi. I probably meant to say "You mean things like SSH?"
As a Linux user, this question offends me... Jokes aside: I love command lines, especially in professional applications, like CAD software and such. Not just the Shell. I'm part of the population, that can't really deal with menus, but I can remember commands and options, by name and then just type them in, etc. But when I'm using a software like Blender or even Gimp, I can't remember *where* half of my functions is, but I still remember their names. When it comes to Shells: scriptability and flexibility are the two main reasons you'll likely never see them to go away. As I said before: many professional tools have their own command line interfaces. The Shell is the command line interface of the system, so by definition it'll never go away. Oh, and if you're "afraid" of using the command line: imagine you're "chatting" with your OS. It might get a little mad at you, bu as long as you don't mention any sensible data, it's not gonna touch it.
Ugh. It was so horrible. I had been using friends and family computers running Win 3.1, 95, or 98, but when I got my first computer it came with ME. I had SO MANY problems. Games performed shitty, movies would randomly drop frames. I thought because I picked out my computer I had made a bad choice. When I upgraded to Windows XP all those issues disappeared.
@@AS-Phoenix.2 most programs on Linux supports the command line, so presumably most music players do too. I'm sure some do on Windows as well - like vlc or mpv
"still alive and kicking somehow" Well most bank server daily, weekly, monthly, etc. are done via batch which requires command line to be there. Windows server is just a custom version of windows for consumers. Right now that would be widows 10 or windows 11. It is also faster to kick everyone out with command line than going down a list of however many users might b e in it as * is a wonderful thing. * is also a terrifying thing too.
"The shell you are wielding has the ability to change the world, for good or for bad.Use it wisely" - Definitely somewhere in some books in Library Of Babel
I was an I.T. student a couple years ago and we used NOTHING BUT command lines for ALL our networking. I've still used it countless times at home when I can't get my printer to work or need to see if a device's IP even shows up on the network. Lastly, you just feel like a badass using it in the first place.
aww.. no mentions of remote shells? I love VNC, but there is no substitute for just ssh-ing into a machine remotely and do what you need to do before logging out.
GUIs are actually NOT easier (to people who're not already used to them) ;P there was a study I can't find anymore, done back in the day when there were still people who had never seen or used a computer, and using a command line was actually EASIER than using a GUI (and GUI principles) but nowdays you're used to GUIs, for the younger people that's all they've ever used, so that's why it feels easier for you, just like writing english with regular latin letters feels easier than writing with runes because you've been doing that your whole life, even though runes would technically be easier, since there's no weird writing rules, you just write words by the way you pronounce them... the study found it easier for fresh users, because you give command, and you get output, you tell computer "list files" and it lists files, you tell it "copy this file and name the copy that" and it does it, it's just like a slightly different version of english, with some specific syntax (like "ls" shorthand instead of typing "list files" in full, or "dir" instead of "directory listing" for windows/msdos, or "ls --help" or "dir /?" to get help, instead of "help me with ls"), whereas with GUIs you gotta get used to the whole "cursor" thingy, and then position that at the right (often rather small) place, and often go through several different menus, etc etc. it's basically a tradeoff of memorizing the right commands, vs memorizing the menus and button meanings moreover, writing basic batch script or shell scripts, is very easy and built-in feature, as opposed to having to figure out some kind of third-party macro recorder, if you want to automate some action (like "make a backup of the file, and open it in my text editor")
As someone who's pretty much a noob, one thing that really made me appreciate/miss the CLI was having to deal with things going wrong on GUI programs a lot (and also Windows. Because Windows.) and doing a bit of poking driver issues with the terminal. The difference between: "Try to infer from the very limited graphical feedback and limited options with poor to nonexisting documentation if something went wrong and, if yes, what" and "in 99% of cases you will get an output that's at least useful to look up and you can generally look up what does what because there's documentation and you're not expected to be clairvoyant" is absolute night and day for troubleshooting.
What most people miss out when using the CLI is that they tend to not know about the suggestions, auto-completions, interactive help, etc. in the shell. Using a shell like "fish" opened my mind. I realized that we don't necessarily have to run a command before determining that it's wrong, or have to look up the manual to see the correct options. The shell can suggest me the possible flags, combinations, etc. while I type. The CLI still has a long way to go. We can have some sort of GUI that helps us construct the command, that'd be cool!
Why does it exist? "AW-TOE-MAY-SHUN" No way any seasoned programmer in their right mind would spend hours clicking boxes and windows open rather than have a script that does everything for them.
@@sohaibalam3185 depends what the task is, along with the scale & frequency the task is run. If the task is weekly, and normally takes an hour when done manually, spending 10 hours writing the task once breaks even in less than one quarter, which is a pretty decent return on effort.
@@saggitt It depends really. If you're trying to do regular sysadmin tasks python will require a lot of learning and effort especially when you're dealing with OS side stuff.
Having Bash is why I use a MacBook Pro for work instead of my windows PC. I develop server software to run on Linux and being able to execute and compile the same code in MacOS is just nice. It has the convenience of a Linux environment on the shell, with the App support and programs that you'd like to get in the GUI (like iMessage). I've tried DOS and PowerShell and it's not for me, but I still love my PC for gaming.
Thanks for sharing. By the way, you are pretty good at narrating, Anthony. It is easy for us to tell when a presenter doesn't know his stuff very well, but really likes to be on camera. You know your stuff and you have a talent for making the listener feel at ease.
Powershell lets you do _insane_ things. Whilst i was playing with it after my first exposure using exchange console and deciding i wanted to learn more, i wrote a script that: Goes onto a network folder or share, digs X levels into the folder hierarchy, reads all the folder permissions (acls), discards the admin / server groups, reads the members of the groups from AD and dumps the lot into a fully formatted excel template (using excel itself as a com object) into a file which easily represents folder names, groups, what permissions those groups have and whose in them. Instant folder permission report. To do that by hand on 5TB of files and folders takes weeks or a paid product. Script does it in 20 mins, and is free (barring the time it took me to write/test it)
"you're probably familiar with bash" *Screenshot of ZSH with grml config like the one that ships with the Arch Linux installation ISO* Anthony, that is an extremely niche troll. (Obv I arch btw*)
Actually, learning the command line gave me a much better understanding of system hierarchy and how a computer actually works. So i benefited from learning it.
Big thing is you can chain together commands so that complex tasks happen without user intervention. GUIs just mostly can't do "rename these files, copy the ones with in the name, transcode them to these formats and shutdown after you're done". With GUI, you'd have to sit there until each step finishes so you can do the next one. With command line, the computer actually works for you.
One more advantage of the commandline is the ease of explaining how to do something complicated: "Here are the commands, paste them into your shell" can often be easier than a series of screenshots (which may be out-of-date) or an explanation of "here's roughly where that button would be, three menu layers deep".
All those In house tutorials with screenshots are still on Windows XP......
When people just google the solution and never bother to update the documents
People say doing anything on Linux is difficult because of command line. You can follow tutorials by literally cut and pasting some commands. It doesn't get any easier.
I helped a friend that way a few days ago!
Yes, this is one thing another didn't touch on. The interface is extremely flat you can get to any command quickly, if you can only remember the command. (some newer cli interfaces make use of sub-commands which help reduce cognitive load similar to the tree menu system).
@@WorBlux and that's frankly just limitations of the most common CLIs, not something inherent to what a CLI is. Modern operating systems have a concept of "push button, start typing, receive command autocomplete", and there are probably many shells which do the same and then some. And as a lightweight version of that - tab-completion, especially with modern extensible tab-completion for subcommands.
Anthony always delivers the facts. Love it.
Just beat the Electron wiz challenge with ZERO LOSSES
ITSA ORANGE JOOOCE
Clash royale content creators are still alive?..
Wait.. clash royale alive...?????
Jk i love ur vids but that game died for me sadly
Now he can max up any card with only comands
And you always deliver the unoriginal comments
I hit the like button for the “hey, built in dark mode,” joke. Legit chuckled.
wat
LOL, Me too!
Same lol
Anthony had me at "Dark Mode".
... Might have been the last two words of the video (before the sponsor), but he had me.
Facts
Never have something been so true like the comparison between GUI features & command line flexibility, learning how to use FFMPEG in the command line & batch scripts has been a game changer for me
Hello Nordern! Love your content
Ive edited video on computers that were too slow to play the video, using ffmpeg.
I Still use it, all these new developers think the command line is a single command issue interface, until I showed them how to use for loops with subroutine calls, with delims and tokens, redirection, stdout and stderr, issuing sql calls via sqlcmd, file parsing, etc. they could not believe it, and all quite simple. They said “how are you doing this all out of your head ?” I said “Well, using it since he days I was a Novell Admin, then went the Sybase / Oracle DBA route on HPUX and AIX, then went to ksh and csh, then back to Windows for SQL Server, etc. a long road of fun fun fun.
Absolutely, oh the first time I've built FFMPEG from source on a Linux, what a worthwhile nightmare.
I used ffmpeg because i couldn't find a good free video converter that supports most formats, they are all paid, 10 years ago there were a lot of free software but they are outdated now because they don't support new codecs and resolutions, i probably should make one myself when i will be able to do that
1 light weight and fast
2 no UI issues
3 easier to do complicated or repetitive tasks
4 works on lots of systems
5 more possible options
6 dark mode
7 works on a distant server without having to virtualize the full environment
haha. I would argue old windows command-line is a UI issue in itself. Windows terminal is amazing though
The most important reason however is that commandline interfaces are vastly simpler to make. Therefore they are far easier to maintain and more stable and secure. They provide a sane place to start with the system, and on linux, the only universal way to configure things. Making gui tools the primary configuration tool for a system, is genuine structural insanity.
@@entelin yeah very stable. Config options are covered by point 5. It is possible to have something like the Windows settings app (search, tabs, menus, submenus etc) or something like the online PS1 builders but that's a ton of UI effort which isn't worth it. As much as I love UI, having a list of every flag that's in the man page in a UI form would be harder to use than just typing
7 there's no reason to do away with it, and no one has to use it or even see it (much)
Anthony is awesome. Please keep him as a presenter, he's so friendly at explaining stuff and seems like such a genuinely nice dude.
Agreed.
agreed. he's gone from being shy on camera during his new employee probation & first videos, to being one of the most liked hosts across the LMG channels.
Agreed in third! I hope he gets to see these comments, too.
He's come a long way, good for him. I do wish he'd accept his balding though because long patchy hair doesn't do anyone any favours.
I would like to add. Linus Sebastian is a very good business owner. He spots; hires and then exploits (in a good way) raw talent. I would imagine he is very proud of his work force. They all seem to step up and shine. I'm sure Linus knows if he can keep developing the business pretty soon Yvonne and he will be able to step away and pursue other endeavors. This is what a growing successful business looks like.
"It comes with a built-in dark mode."
Nice one Anthony! 👍😁
> COLOR F0 😉
color 8
for really dark mode
@@GeekIWG wot is the f for?
@@Jesse-2531 The first character after the Windows/DOS COLOR command is the background color, and the second character is the foreground (text) color. "F" indicates bright white. "0" indicates black.
And during my initial days with command line, I thought green looks cool and fancy. Apparently history repeats.
Since Linus and Luke are switching to Linux and Anthony is obviously going to play part into helping them, it'd be cool if Anthony made some Linux basics tutorials, tips and tricks for the rest of us to watch and learn while teaching Luke and Linus.
Seconded
@@tongpoo8985 However the next denomitation is said. :)
@@THEwed123wet 3rd'st'd. (I'll see myself out)
@@implayingsomebass4753 wanted to avoid that XD
They could call it "Learning Linux with Anthony", a series where we follow Linus' / Luke's endeavor to learn Linux, having Anthony as a guide
Also keep in mind that a GUI requires a LOT more additional work for the developers. As a result, there are a lot more tools that can only be used using code and/or command lines that simply aren't available using a GUI.
i loved the “hey, and it comes with built-in dark mode”
Title: "Why Do Command Lines Still Exist?"
Me, a SysAdmin, who's using ssh 80% of the time he spends in front of a PC: "Because shell go brrrrr..."
Shell go "waaaaaaaaaaaaaaaaaaaa i'm brokey here have an error that no one has ever seen in the history of the internet"
@@philipw until you actually read what the error is and it probably tells what you're doing wrong
@@t_kups8309 he confused it with windows errors
Because I don't want monitors on 4 of my servers. I spose there is VNC or teamviewer, but After switching to Linux about 10 years ago, administration via a terminal is a lot easier for me.
Windows 95. A Turtle and its Shell.
I miss one reason in this video: SSH. It's so much easier to just SSH into anything from any device, like when I don't have my laptop with me I can still SSH into my server with my phone. VNC Viewer works but it's just not made for a small display. SSH doesn't care.
Also, 'sudo apt update && apt upgrade' is a reason in itself to love the command line.
Yep, I use Chocolatey in Windows for the same reason, "choco upgrade all -y" and everything gets up to date in a few minutes
you meant "&& apt upgrade" :) (no point redownloading the updated package infomation twice :) ) Ya, it is so convenient being able to just do a quick SSH using any device, on mobile internet, and just check if the system has completed what it needs to complete
That's a reason to like package managers, because if this is possible with 1 command in a command line it could be just 1 button in a GUI or even a keybinding. Man, I hope Microsoft will make winget into something actually good
Ssh, ftp, telnet...
so you update the database twice, first time as root and second as current user
Every developer/sys admin out there : Why do GUIs still exist when you have the command line available?
as a developer while I love the command line I would die if GUIs just disappeared
TUI is still rock
@@realtechhacks as a developer, no this isnt true at all, CLI makes more sense for coding
@@duckmeat4674 So you would be happy if guis ceased to exist? I installed arch Linux, and I would say no. I use a graphical text editor or ide. I compile/run things as well as many other chores (ie moving files, etc.) using the cli. I use a graphical web browser to access stack overflow/reddit to solve bugs. That's not unusual. I am also a bit of a gamer, and a video editor. Those don't work too well in the CLI.
@@realtechhacks I use man pages for documentation, vim for writing code, maybe ill query stackoverflow for answer, and CLI for folder management. Arch was easy to install and I have a script for reinstalling it even
To me, it's EXACTLY the same question as why code based programming still very much dominates in general: it's indeed it's customizability & flexibility.
If programming code and shell interfaces where not as very useful as they are, they wouldn't be so heavily developed as they are!
For the same reasons "low code" programming solutions don't really win the battle in gereral. If they were more useful than code, they would have already been much more popular and dominant than they actually are! In reality those solutions are only used for simpler, more standardised, more predictable tasks.
I personally believe that code will never disappear. In the future, if GUI's get more advanced, so does code as well! Code will always be most flexible for complex tasks.very much dominates in general: it's indeed it's customizability & flexibility.
I agree
Imagine a world where everything is made in scratch
id be careful about assuming that things which are more “useful” will inevitably be more popular
also i wouldn’t call it a “battle”, each tool has its niche, use whatever fits the job
@@5cover spaghetti code but visualized that would be terrifying. Although honestly python like syntax might be the future rather than visual scripting. It’s like looking at old predictions of flying cars we don’t realize that visual scripting has more problems than our current programming languages.
LCNC definitely has its uses. I don't think it's really that low code is intended to replace coding, it's got a different purpose, same that both GUI and CLI exist in parallel. I agree, there's lots that you wouldn't want to do in a low code environment. Equally, not everything needs to be fully scripted or customisable. Be led by the problem not the tool
It's not only this, but for the business environment, it's way cheaper in terms of network traffic to interact with a CLI rather than a GUI. In some scenarios it's even critical. What if the network if flooded by a faulty device or an attacker? Try sending and entire "movie" just because you want to click here and there to see what's happening versus sending some bytes of texts that represent the CLI commands.
Also, a huge upside of console commands is development time. No need to spend so much time on designing and debugging all that UI
So much this. It's also much more lightweight, and command line programs like ffmpeg can easily be integrated into other applications. You can't really do that with GUIs.
Agreed. Super fast & easy to develop command-line interfaces. I use command args all the time for my programs on Windows at work, and on Linux for my Raspberry Pi programs at home.
Very friendly for when your program is being run by other programs or the OS too.
And it's much more portable, because almost every programming language supports input > output operations in its standard library.
I can't imagine anyone that writes software for self use would ever bother designing a GUI
@@robbietorkelsonn8509 It depends on what kind of software you write. I've once written a tool that helped me visualize some data for a certain problem, and that wouldn't really be feasible as a CLI program.
me 10 years ago: What is this 70's Unix crap?
me today: I can't live without bash at least
Unix and linux became quite good in the 90s after the 32 bit x86 platforms came.
Yeah, I tried zsh but it didn't really work for me
Based UwU
loaded 'fish' on my linux machine. very very nice shell. it's like nice little additions that would have made bash even better. highly recommend checking it out.
I recommend fish but don't go running any bash scripts in it, it wont work as its not POSIX compliant.
"Your probably familiar with bash"
Shows zsh
Noticed that too lmfao
It is funny, but you're probably using a bash shebang in your scripts anyway. I've used zsh for years for fancy prompts and plugins but I wouldn't say I "know" zsh, maybe that's pretty common?
Yet pause to remember zsh when mentioning what Macos replaced bash with. Sneaky one guys ;)
And mentions using DOS, with a NT command prompt and NTFS file system instead of FAT16
@@AverageSneedEnjoyer You guys don't use posix shells?
A major benefit with terminals is piping one programs output into another programs input, technically making another program from a pipeline of programs. Another benefit is that, a lot of shells (ZSH, Bash and Fish for example) can automatically expand parameters, like paths with globs and other patterns.
A CLI also allows for much better and easier reproducibility in general. Sharing a command is much easier saying "type ssh user@machine, then your password" than telling somebody "click here, then that menu, type in the hostname, tick that box, click that button".
Now whilst GUIs allow users without any or very limited knowledge to navigate around a program without potentially breaking something, the CLI is much more precise.
Want to copy every file that ends with .jpg from one folder to another? Takes you one second on the command line.
However I can appreciate both - as somebody who works with cloud services both the web UI and the CLI have their advantages. Especially if I'm only learning how to do stuff the UI helps me out by showing me all the things that I absolutely need to provide when say, creating a new virtual machine. Easy to use text boxes with helpful descriptions etc.
It also helps me stay on top of things like resource utilization. However as soon as stuff needs to be reproducible by somebody else, writing it down in CLI commands makes things so much easier.
As a developer, the command line is not an option to do something quicker, it's an absolute necessity. I have yet to come across a GUI for node that made any sense whatsoever.
Well, a GUI is utterly amazing for displaying options and objects that the user may not know exists or simply doesn't remember. It's also far more intuitive than a CLI. But if you know what you want and exactly how to do it, yeah, a CLI will run right over GUIs for almost everything. I like to think of the CLI as very quick programming. It can do whatever you wish and do it quickly if you know the phrase to type in. If you don't though, well... Good luck. :)
@@arnox4554 that's what man pages are for. Unlike a GUI, they're searchable.
I would like to get into command line but I couldn't find any tutorials or guides. Do you have any recommendations?
@@mayurga8956 the best way is to find a repetitive tasks you do that you can automate. Figure out how to run it from the cli, then how to write a script to make it easier.
@@arnox4554 that is how google makes it's money
Interesting quickie, especially after that story about a whole class of engineering(??) students who didn't know how the file directory structure works and couldn't find their work they saved.
that was middle school, not Engineering students. lol
@@Reeces_Pieces still pretty awful tho
Man, I've actually had to help students find files before, and it's a bit groan inducing. They would especially get confused when they had to use Citrix to launch an app (like Excel) and didn't understand the difference between the local machine file system and the virtual file system. I've literally had to remote into their desktop to poke around in their file system to find their home directory for them and they act like I'm a tech wizard for finding their files, lol!
@@andmicbro1 It's just how you learned it (or got used to). That is the thing I totally hate about all those "library" and whatever stuff and that it takes several clicks in the explorer (and it's on the down side) to just get onto C:\
I mean I have a structure I am used to for 20 years. I know where to put my stuff and where to find it when Windows borks itself up (admittedly has not happened with Win10 so far) and I need to copy it with a live Linux.
@@Reeces_Pieces it was in uni
The command line is simply an easier solution to certain problems. Even for basic use, "command line" does not automatically mean "harder/more complicated than the GUI version". Even with GUI package managers on Linux, I'd rather just fire up a terminal and type "sudo pacman -Syu" away much quicker than the GUI's window could even show up.
aka how to say "I use Arch btw" without spelling it out ;)
Or Manjaro, or EndeavorOS, or any of a dozen other Arch-based distributions, including SteamOS.
in windows (can't speak for any other OS) it would be faster to just win + pacman + enter than win + R pacman + enter.
Actually, now that I read that I take it back.
Although you might have to do some CD in the command prompt.
@@larsalfredhenrikstahlin8012 CD is Completely unnecessary. Just pacman
@@kavinunethsarakoswattage3516 'pacman' is not recognized as an internal or external command,
operable program or batch file.
rip ^^
"If you use Linux sure you're familiar with Bash" *shows ZSH *
Oh, I assumed it was just bash with a weird PS1 config.
As a ZSH user this triggered me.
@@RowenStipe FISH master race.
@@denniscleaver3559 lmao
Oh my zsh!
Bash is so powerful, that I spend 95% of my time in the terminal. It has even gotten to the point where I open a terminal when I am not sure what I should open!
Answer: because programmers usually want working stuff, not fancy stuff.
As a programmer: true
agreed
Indeed.
ANALOGY=TRUE
@@reggiep75 geez you programming in COBOL or SQL with those caps?
Because it's extremely easy to keep a command line interface up to date, the people programming the GUI and every other part of the OS use the command line during development (and probably for everything else), and there are a whole lot of us who still find huge value in skipping the limits of the GUI and getting things done the old fashioned way.
At work, we're actually planning deployments of CORE windows servers with zero GUI. GUI is not just additional bloat, but also opens attack vectors for hackers.
@@MahmoudElgassier this.
But windows server? Yikes
Use bash everyday for work, usually just to tail log files of our software while recreating an error but it works for me, keep up the good work Anthony, love when you host
When I tried Linux I realized how although there's a much higher barrier to entry for using command lines instead of GUIs, while the commands themselves are hard to understand, you don't have to memorize them - you can always search or save & refer to them - and it's so much easier to debug error by just pasting/entering a command and hitting enter instead of following a long article with 15 steps of what to click and what button to scroll down to & hope everything you see on your screen is the same stuff they see (GUIs get update fairly often, command lines are more or less fixed)
So tl;dr: they exist coz they're better, they're just harder to learn, meanwhile a *good* GUI can direct your eyes naturally to what you should click instead of requiring you to learn beforehand, too bad not that many GUIs are good lol
Two commands will change your life: `man` and `apropos`. `man` will render and display a manual page, some leave a little to be desired, others are fairly comprehensive even going so far as to provide examples of what arguments to use to accomplish certain common uses. While `apropos` lets you search through the manual pages if you don't quiet remember the name of the command you want to read the manual of.
GNU adds a whole information pages system through the `info` command and many applications under the GNU umbrella focus on providing comprehensive info pages rather than man pages. It is a little more advanced but I appreciate the simplicity and consistency of the traditional man page.
Einstein was once asked what the speed of sound was. He said he didn't know. When asked why he didn't know this fairly basic fact (about 300 metres per second is memory serves) he replied he could look it up if he needed it.
Instead of finding an article that tells you what to type into your terminal and hope it works for your distribution of Linux or Windows. Give me a break, why are you all being disgenuine? As if you have never found commands that are outdated or don't work for your particular distribution. Not to mention 95% of users have no fking clue what the command does, they just blindly copy-paste it.
@@ararune3734 What is this in response to exactly?
I thought people usually include their OS version/distro in their search queries when looking up help. And the not knowing what you're doing is common either way; when using GUIs most people will just follow a _how to_ guide online, most people I know (even engineers) aren't comfortable enough poking around the OS and Microsoft for e.g. still does a terrible job at describing what things do in the UI
I imagine most low level debugging info will also always stay behind terminals since it can be really dense & is rarely needed if at all
Yes, Linux's dependence on the terminal is usually a copout for its lack of everything, but the terminal is useful enough that I don't imagine any time when it won't be available, to go back to the video (devs also need to use them). Terminals are also becoming more modern in diff ways
@@ararune3734 haven’t really shared this problem if you know what the commands do you’ll probably be fine. Some people just blindly copy commands, but that doesn’t mean everyone does. That’s usually for installing things, but you can’t almost always find what your looking for on the aur or GitHub. I don’t see how it’s disingenuous to like the command line when many of us use it daily. If you know a bit of command line then you can probably automate tasks through shell scripts with minimal ease. Also windows command line and power shell is horrible usability wise. I think this criticism is valid in a few cases and I know a lot of people like this. I have a pretty minimal tiling window manager setup and I work a lot in the terminal, but I have friends on pop_os and other very well configured and easy desktop environments and they tend to blindly execute commands. These people tend to use the terminal for grunt work and neglect how useful it actually is, but the figure of 95% seems extremely hyperbolic
Automation is for me the most important.
Want to do some complicated task? Throw it in a script file! Even running it once per month becomes a breeze, because you don't need to remember to take all the steps you made in a GUI. Just rerun the script you made! Get it peer-reviewed! Run it via Cron (on Linux) to run it on specific days of the week!
Because building UI takes a lot of work.
This.
@@elliedamitz8876 but it takes more work for your computer to run it! might not matter on a workstation, but on a server expected to serve millions of requests a day it really matters
@@elliedamitz8876
Bruh, tell that to normal office workers back when microsoft dos was king and lotus was still a thing. Those are normal people, they just learned different methods.
Apparently not these days. Modern UX development:
- Enable hilariously large font faces
- Throw around sparse controls with lots of wasted screenspace
- Profit
@@Wahinies accessibility plays a big part. Regardless you caring about it or not.
Techquickie: Why do command lines still exist?
Linux: Am I a joke to you?
Techquickie: Why do command lines still exist?
Linux: Why do GUIs still exist?
@@grmancool Neuralink: why UI?
you are.
@@elliedamitz8876 except no. Windows Gui is light-years less powerful than a normal bash window. If you care about lowering your volume, sure Windows has you covered. If you want an automated workflow for testing, development and production, well good luck. Windows has everything that needs to be done from time to time by the average user, nothing else.
@@elliedamitz8876 uhm... no. As a sysadmin having to deal with both windows and linux servers... windows are slow to work with, prone to failure and worst of all, requires a freaking gui. 😑
Commandline is your friend through thick and thin when you have to get things done.
Presenter Anthony: "Why do Command lines still exist?"
Anthony's Unvoiced Thoughts: "The same reason why you wrote a script for this video instead of drawing a picture. Sometimes words are more efficient."
Taran: "I wrote macros to write words and not draw pictures to make this script."
LOOOOL
Me, who uses the terminal for everything… “why wouldn’t they? GUIs are often way slower and more complicated…”
With the rise of natural language processing, cli should be easier than gui later by using plain natural language commands
@@fltfathin I can still type commands faster than I could articulate them with speech, sooooo…eh
Not necessarily, it depends on the situation. With GUIs you can also develop muscle memory as well.
@@jackkraken3888 sure, and for image editing for example they are basically the only way.
But for everything I am doing, GUIs are worse.
@@heinrichdertote149 Thats fine for you, but I I do love a well made GUI, eg Rufus (or Ventoy), its just clean and just does its job well.
Not mentioned: Try to reliably record and document a long sequence of user actions in a GUI. Try to follow some youtube instructions and see that the options they describe do not show up for you because you have changed some display options. That never happens in command lines. I can send you a script of command lines to do very complicated and long procedures that will work. You couldn't do one-tenth of that with a GUI.
Also not mentioned: Suppose you have gone through a long trial-and-error process to get something done using command lines. You can list the history of commands, edit out the steps that didn't work, and save the final perfected process in a file to repeat when needed.
Command lines rule!
"It comes with a built-in dark mode." Anyone remember that xterm default color scheme of black on urine yellow? 😬😬😬
yes....
I hate how xterm default color is white, it screams at my sensible baby eyes
just imagining black on urine yellow makes my head hurt
I’ve been learning and using the command line for 7 years now. It has become so much easier and quicker to manage and do everything from the command line now. GUIs generally feel like a hindrance most of the time
What exactly do you use it for outside work?
@@cristibaluta I use it to convert music files, sometimes even convert video, program, write (AsciiDoc markup language in vim), manage my own computers and servers, download stuff, read RSS feeds, I browse/copy/move all my files on the command line (I made a shortcut to do cd & ls all at once so it's faster and easier to navigate)...that's all I can think of off the top of my head
@@classicrockonly You are officially a nerd.
@@cristibaluta thanks! :D haha. Yeah, I'm sitting here reading an article about interprocess communication via message passing systems in DragonflyBSD and what the heck a clustering system means while I'm on-call and on standby
@@classicrockonly None of what you described requires a command line or in any way more advantageous than a normal GUI on any machine that has specs better than a baked potato (or when ssh-ing to a headless server). All of this seems like forced usage of cmd to look cool or whatever. Command line only truly makes sense when you have some repititive tasks on a large number of files and you can use some sort of pattern/regex/loops to automate that. Even that is fairly easy to do on most GUI file managers.
well, command lines just saved my pc from being bricked, so i'm thankful.
Ooooh.. Been there and had a to use a tablet to get the vital forgotten info to input in to sort a PC out once. Ironic really, having to use a bloody tablet to get info!
@@reggiep75 i tried windows 11 and went back to 10 and the installation was corrupted and a lot of stuff was missing, had to use cmd to reinstall windows 10 entirely
and why do some people assume command lines shouldn't exist. One popular reason is they are a group who thinks 'out with the old, in with the new', regardless of why. one good use could be to build new mini gui's using the command line, instead of writing pure code doing operating system calls.. that's just on top of even more reasons to keep it. Also, being that it was around since the start, it doesn't use up much memory or tax the cpu differetnly
GUIs are also relatively heavy on resources, even the lite ones. So on server machines/vms, we opt to not use a GUI at all. If you need to do something on a server, you have to do it through a shell (command line), typically via SSH.
The exception here is Windows Server, which is a resource pig.
The one problem when Anthony hosts content : people talk more about Anthony than the content itself !
I wouldn't consider it a downside
And when you know why it's quite cringe.
@@GalacticBadger what do you mean? I don’t know “why”. I just like his voice and he’s got a good sense of nerd humor.
People are just showing appreciation for actually having a guy with a lot of technical know-how on a show about technical know-how. Though I agree, I think Anthony would be a lot more happy if people focused on the content he spends time producing, and not just himself.
Stop pulling Anthony into half-assed tech support challenges and give him his own channel already!
I'd watch "Linux Shenanigans With Anthony" all day long.
Bump, Linux with Anthony needs to happen
100% agree, come on Linus at least a weekly Linux update gig. Unfortunately Anthony is probably kept busy with a lot of other projects.
Not to mention ability to create scripts (sh, bat) to automatically perform lots of tasks and configure them.
Shell scripts is how A LOT of stuff works on Linux, including how literally any service was started before systemd.
wasn't that point also mentioned
@@elliedamitz8876 I see you have never used CLI before.
@@elliedamitz8876 if you want to move files around to many places, making a script or three that do the tasks than error prone manual work in a GUI. Synchronizing source, deployment of files, moving files to places where they can be tested, etc. I know how to use a GUI, but for tasks I do several times, I prefer to make a script that do the tasks.
Powershell scripts can be pretty damn useful as well!
When I started to learn my firsts command lines on linux, I felt powerful because you were able to do a lot of things in a fast way without having to need the GUI.
As a kid I loved going into cmd and just playing around with color commands and tree, dir s, and eventually learning how to detect connection issues.
Yikes
@@FunBoysGaming I wasn't a very extroverted child
The GUI is your computer talking to you while the Command Line is you talking to your computer.
that's a brilliant way to explain it
More like, the command line is a GUI made by programmers.
In reality, the command line is also a middle man. A command line is you talking to bash, which talks to your computer.
@@theMoporter - I had hoped someone would offer up the 'GUI = the middle man' analogy. YOU'RE ON THE WINNING SIDE!
@@elliedamitz8876 Outdated? Absolutely not. But I agree very few people use it nowadays
Many dev tools were available with a CLI first, those tools are now either available as plugins in IDEs or standalone with CLI. For me personally it’s easier to just use the tool separate from the IDE because they tend to screw with it and I don’t have full control over what’s happening. Also, seeing that Docker Desktop is now licensed, I can just uninstall it and switch over to CLI on the docker engine.
I remember learning python back in 2013 and installing packages was so simple, I fell in love instantly
"back in 2013" Man, 2013 feels like it was last week but it's actually been 8 years...
Yep. Package managers are really damn awesome.
@@Skystrike70 Ya, 2013 was just "one job ago", which is how I guess I measure time in my old age.
Anthony talking about CLI or Linux is my spirit animal
A lot of jokes on this channel are cute little throwaway gags, but the "built in dark mode" joke actually made me chuckle
Anthony should do a walkthrough of the official Arch Installation Guide, step by step. Would help make it less intimidating to noobs.
Addendum: the OFFICIAL guide. Anything other than the official guide, to the T, will ruin any chance of help being found. RTFM.
There's definitely a lot of guides on TH-cam but I do see a reason for LMG doing one being that a larger audience would be more likely to see it.
@@tukuiPat the larger audience, but also the larger amount of resources they have to do it clearly and concisely, while covering common possible issues that may arise, and best practices when diving into this deep-end.
Arch might not be the best distro for noobs.
@@lodestarsd4456 yes, BUT the distros for noobs are all pretty much plug-and-play. Most distrobutions people will be exposed to will either be in the "hand-holding" camp or the "good luck!" camp. If they can't figure out the former, then I doubt they'll even consider attempting the latter. If they don't try to pull and Oprah with Arch and pose it as an "everybody" solution, I don't see anything inherently wrong with it.
Personally, I'd recommend a Manjaro walkthrough. The installer is as easy as any other Linux distro, and once it's installed, you are effectively running Arch. In fact, a walkthrough of Manjaro on a Raspberry Pi would be the least intimidating to would-be Arch users.
One of THE use cases is ffmpeg.
There's a magical ffmpeg command for anything video, even doing things such as converting playstation video files to something a modern video player can use, to more mundane things such as creating webm files out of whatever you can toss at it or..
GUI wrappers for ffmpeg are far more intuitive and easier to use.
@@henlofren7321 but often miss features, or have missing support for them. And it's way easier to re-encode a bunch of files. Ever re-encoded 20TB of movies with a gui? yeah, nobody ever has done that or will do it. But with a script? probably hundreds of people.
@@RobinCernyMitSuffix
They also have a space to add commands that aren't accessible through the GUI. You can queue up however many videos you want, file size isn't the issue if you limit the amount you're processing in parallel.
If you're writing scripts you don't need a GUI, that should be obvious. I'm not proposing a visual programming language here, although it would be an interesting idea to implement...
since i switched to linux i've been using the command line for most things, it's faster most of the time, more consistent, more efficient, and it's really not hard at all, unlike what most people think
A N I M E
N
I
M
E
Black window with text scary. Must use windows.
If you type if correctly.
I am really surprised you can do that, Neppu Neppu!
Most people don't think it's hard, most people think it's tedious to have to learn how to do basic things. Give me a new GUI app and in 10 seconds I'm doing the thing I want and can get back to it instantly. CLI? /help, /?, command /?, command function /help, command function -attribute /help, command function -attribute (sorry you need to be admin) close CLI, open as admin, command function -attribute (now it does the thing) and then the next time I need to do it? command function /help
it's only easy to remember for frequent things
All of these reasons ultimately stem from the fact that it's a lot easier to create a good text interface than it is to create a good GUI. There's no reason you can't provide automation, a large feature set, and portability with a GUI. It's just really hard.
The problem is that even if somebody _did_ implement the headline features in a GUI, it'd still take longer for the user to achieve the same tasks compared with the command line. For example, consider pipes - implementing that in a generalised way in a GUI would be a horror show. On the command line, it's as easy as typing one character (admittedly, one which the average user wouldn't be able to find on the keyboard...).
One big point for CLI is development time. It is so much faster (often two times and more) to implement a basic terminal tool instead of wrangling with GUI/UX and a lot of stupid non-issue tickets (GUI tends to attract "noobs", while CLI attracts more tech savvy users who generally give much better, actionable, reports). For advanced users it's in many cases better to NOT have a GUI, but instead have much more features and detailed options. Or as an author of a CLI tool, let other programmer develop a GUI frontend on top of your project.
I use CLI’s daily, so I’m not surprised that they still exist. I just wanted to hear Anthony’s take on them.
The only terminal interface I don’t like is the default Korn Shell in RHEL. If the up arrow doesn’t cycle through your previous commands, then you’re in Korn Hell, and need to switch to Bash immediately. Luckily it also comes with RHEL, so I don’t know what sadist picked it to be the default.
Yeah, Idk who (outside of sysadmins for legacy systems) would subject themselves to that. Although, Zsh takes some features from Ksh, so I hear. If you're not trying to be maximally POSIX-compliant, I recommend Zsh.
@@seanld444 I'll have to give it a try, because I just read a brief article that compared all the various Linux shells, and Zsh sounded interesting. It's obviously much newer that bash or ksh (albeit still pretty old being from the 90's), but it sounds like they tried to combine the best of both.
The only other shell in that listicle that caught my eye is something called fish, which the developers described on their website as "Finally, a command line shell for the 90's" which is funny because it was written in 2005--so whoever is behind it has a sense of humor I can appreciate. It also supports the "astonishing 256 color palette of VGA" and a handful of other features.
That said, I question the accuracy of the listicle, because the author didn't disagree with the proponents of ksh when they cited "an easier way to repeat commands" as the reason they feel it's superior--when there is literally nothing simpler than just using the up arrow on your keyboard to scroll back through your command history. The handful of times I tried to use ksh that was such a turn off, I never even bothered to figure out how to repeat commands using whatever crazy method they came up with. If they had used the up arrow for something else that was equally useful and/or obvious, then I might've given it a shot, but they instead opted to break from a long established paradigm for something infinitely less intuitive to use.
Anyway, thanks for the recommendation!
@@kernelpickle I didn't know about that fish slogan haha. That's great. Another TH-camr I watch (Luke Smith) did a review on fish which left a slight sour taste in my mouth, as there are some things I'm not particularly a fan of. Zsh seems to be the most "modern" shell that doesn't give up too much on POSIX-compliance, while also provided lots of niceties.
Two of the best niceties in Zsh:
Rather than typing `cd ..` to go up a directory, you type `..` and done. That works for most directories. As long as there is not a command in any of your PATH directories that has the same name as the directory you're trying to cd to, you can just type the directory name, and it will interpret it as though you were trying to cd into it, rather than run a command of that name. If that makes sense. I love that.
The other feature is a plugin that I got from oh-my-zsh that actually adds autocomplete functionality to the shell. Partially type a command, hit tab, it will cycle through the commands that match what you typed. For some supported commands, hit tab when entering arguments/parameters, and it will show you a list of arguments and their descriptions.
Admittedly I have not given fish the benefit of the doubt and tried it, yet. But Zsh mostly fits every use case I need.
@@seanld444 Well, autocomplete sounds like a nice feature worth adding. I haven't had a chance to actually try out zsh or fish yet, but I did spend some time checking out the fish website. I'll have to check out that video you mentioned, so I can get a more in-depth look at it.
That said, if I'm being honest I'll probably do a ton of research and just end up sticking with bash anyway, because I just don't do enough scripting in Linux to see the benefits of switching shells. Whenever I get into something where I feel like I need to write a script, I usually write something in Python. Thanks for the info though!
@@kernelpickle yeah man absolutely. Hope you find whatever suits you best.
The "Hey, it comes with a built in dark mode" sold me
I would just like to plug the awesome Windows Terminal here. It is really great, a terminal every windows user should have. (comes with built in support for cmd, ps, WSL(bash, zsh), and literally any other shell you want to use). Also it improves the user interface by miles. Just because it's a command line doesn't mean it should look bad and not 'modern'!
Erm…do you mean Powershell?
@@liesdamnlies3372 nah they mean the windows terminal which is the UWP terminal app, only benefit over powershell is you can run multiple instances in 1 window
@@FirstnameLastName-mr8lk AAAAAAAAAAAAAAAAAAAAAA
Now I'm just more confused. But I've always been confused by how Microsoft does things.
@@liesdamnlies3372 OK so there is command prompt and power shell then there is windows terminal which let's you run power shell, command prompt, azure, and wsl instances in 1 window so basically windows terminal is the best feature wise even tho it kinda ugly cuz uwp moment
@@FirstnameLastName-mr8lk As a long time Alacritty/Kitty and tmux user, I am confused by this description, but okie
Because you can often do more in them with less overhead (so much less of it in fact that you can reliably work on a completely different machine which is somewhere else in the world entirely even and hardly even feel the difference)? Also whatever it is you end up doing, you can just save your constructed command as a simple script and do that thing even faster the next time, just as accurately - you can even have that script run automatically should you so choose with no issues at all. Trying to do that in a GUI is asking for trouble.
Who even would ask this question? Even those who would never actually touch the command line would likely go "it's there for tech wizards to do tech wizardry with probably and that's why it's around".
Upvote for the awesome Toshiba Satellite (CS 110 by the looks of it) at 1:03.
I think Anthony should join in with the switch to Linux thing, but use a tiling window manager like StumpWM where its mainly command line focused!
He already runs Linux on desktop.
@@tunahankaratay1523 Yeah, but there was a comment from someone on the LAN show saying Linus should run Linux all from Bash. I just think it'd be cool if Anthony tried out something like i3/Qtile/StumpWM and used it as part of the challenge.
There’s that soothing voice that we missed so dearly.
I love working in the terminal/CL. I use it for work all the time. It feels closer to the things you are trying to do, instead of interfacing with GUI abstractions. I wish I knew more commands and tools, honestly.
The CL world could benefit from more “first time user” content. A man page isn’t the best place to start.
It's out there. You should try looking for it.
You forgot to mention server systems. Unless it's a Windows server, you won't find GUI in most of them. Everything is done in command line, remotely. Text mode makes work very quick and efficient, even when you are connected from the other side of the globe... from your phone... over GPRS... Scripting is a big thing there too. Command line will stay with us forever or until we get neural links or some other, fantastic technology. And that is not a bad thing, at all. Command line is very powerful and I can't see how GUI could even approach that level of flexibility. That does not mean graphical interfaces are useless, of course. There's a lot of tasks, where GUI is the only sensible option. And sysops also use graphical environments to work with multiple command line windows at once, which is pretty normal stuff when you "op" the "sys"es ;)
Loved the fact that somebody put background fan noise when the image of a guy in a data center popped on the screen. The attention to detail is awesome :)
In other words, when all you need can be performed with the mouse or your touch, using shells makes no difference.
But if you need to perform specific tasks with precision and control, that's when the shells really makes difference.
The end result may be the same, but the way you get there is much different and the amount of tediousness and repetitiveness can vary greatly (usually with the better option being a TUI/CLI). Using the CLI will also virtually force you to adopt a better file-naming standard (with how wildcards work) if you didn't already have one (i.e. no non-descript IMG00049.jpgs), which will save you time in a GUI or a CLI.
I think its only just familiarity - everyone I know who is skilled enough with command line will enjoy using it over a GUI if possible. But knowing everything from selecting your Bluetooth device to running data analysis is a long journey.
The biggest upside to using bash, zsh, etc is that remoting in to a machine is a lot easier. At my work, we never build our packages locally, but use a powerful server to build and develop our products.
It's really easier than clicking twice?
@@kaldogorath what do you mean by clicking twice?
@@EDToasty ssh ftw :D
There are more reasons: They're great for remotely administrating machines with low speed connections, or which are on the other side of the globe and have more considerable latency, and they can be used on embedded devices that do not have the capability to run a full GUI.
You referring to SSH?
@@eccentricOrange Not necessarily, that's one way to do it, but there are a variety of ways to get access to remote command-lines. Some software exposes it through a browser, embedded devices and even headless servers often do it via serial port, serial port emulation over USB... devices like routers allow you to telnet in, yet others have desktop software that allows access... I'm sure I'm only touching the surface. One of the cool things about terminal ("command line") access is that it's so low-overhead and simple you can do it in many different ways.
@@Chatsu8o well I should have been specific, my bad. Of course I realise there are multiple ways-I myself use Serial and SSH for my Raspberry Pi.
I probably meant to say "You mean things like SSH?"
@@eccentricOrange Well SSH is definitely a major part, but also sftp or rsync. If the latency is high, good luck navigating that on a GUI 😂
Anthony’s episodes are the best. They’re the only episodes where I always learn something. Keep it up!
As a Linux user, this question offends me...
Jokes aside: I love command lines, especially in professional applications, like CAD software and such. Not just the Shell.
I'm part of the population, that can't really deal with menus, but I can remember commands and options, by name and then just type them in, etc. But when I'm using a software like Blender or even Gimp, I can't remember *where* half of my functions is, but I still remember their names.
When it comes to Shells: scriptability and flexibility are the two main reasons you'll likely never see them to go away. As I said before: many professional tools have their own command line interfaces. The Shell is the command line interface of the system, so by definition it'll never go away.
Oh, and if you're "afraid" of using the command line: imagine you're "chatting" with your OS. It might get a little mad at you, bu as long as you don't mention any sensible data, it's not gonna touch it.
1:18 Ouch.. yeah even I am getting old. Used Windows Me for years :D
Ugh. It was so horrible.
I had been using friends and family computers running Win 3.1, 95, or 98, but when I got my first computer it came with ME. I had SO MANY problems. Games performed shitty, movies would randomly drop frames. I thought because I picked out my computer I had made a bad choice.
When I upgraded to Windows XP all those issues disappeared.
I used it for two days and reloaded Windows 98.
Me who used it few hours ago: hmm.. lets see why we still have it on our computers
Yeah i always use it for Diskpart.. very powerful than windows normal formatting tool and no need to download additional apps
Me, using it right now to play music and edit files:
@@KingJellyfishII can you play music through it?
@@AS-Phoenix.2 most programs on Linux supports the command line, so presumably most music players do too.
I'm sure some do on Windows as well - like vlc or mpv
@@AS-Phoenix.2 yeah, the "play" command exists on Linux for example. Doesn't even show a window.
I like how the editor showed a zsh screenshot as Anthony mentioned Bash.
well spotted, Ruby. ;)
Command line also leads to automating stuff with scripts; where the REAL fun begins
A computer without command line sounds like hell
"still alive and kicking somehow" Well most bank server daily, weekly, monthly, etc. are done via batch which requires command line to be there. Windows server is just a custom version of windows for consumers. Right now that would be widows 10 or windows 11. It is also faster to kick everyone out with command line than going down a list of however many users might b e in it as * is a wonderful thing. * is also a terrifying thing too.
Everyone: pointing out zsh is shown instead of Bash
Me: echo !!
"The shell you are wielding has the ability to change the world, for good or for bad.Use it wisely"
- Definitely somewhere in some books in Library Of Babel
In fact, there is an extremely large amount of books in the library of babel which are iterating on this statement many a times
Sirawata ? 😂😂
I was an I.T. student a couple years ago and we used NOTHING BUT command lines for ALL our networking.
I've still used it countless times at home when I can't get my printer to work or need to see if a device's IP even shows up on the network.
Lastly, you just feel like a badass using it in the first place.
so nice to have Anthony explain things, he's very good at it
aww.. no mentions of remote shells? I love VNC, but there is no substitute for just ssh-ing into a machine remotely and do what you need to do before logging out.
ssh is the best invention ever!
basics of programming and some knowledge of command line opens a whole new world of possibilities.
GUIs are actually NOT easier (to people who're not already used to them) ;P
there was a study I can't find anymore, done back in the day when there were still people who had never seen or used a computer, and using a command line was actually EASIER than using a GUI (and GUI principles)
but nowdays you're used to GUIs, for the younger people that's all they've ever used, so that's why it feels easier for you, just like writing english with regular latin letters feels easier than writing with runes because you've been doing that your whole life, even though runes would technically be easier, since there's no weird writing rules, you just write words by the way you pronounce them...
the study found it easier for fresh users, because you give command, and you get output, you tell computer "list files" and it lists files, you tell it "copy this file and name the copy that" and it does it, it's just like a slightly different version of english, with some specific syntax (like "ls" shorthand instead of typing "list files" in full, or "dir" instead of "directory listing" for windows/msdos, or "ls --help" or "dir /?" to get help, instead of "help me with ls"), whereas with GUIs you gotta get used to the whole "cursor" thingy, and then position that at the right (often rather small) place, and often go through several different menus, etc etc.
it's basically a tradeoff of memorizing the right commands, vs memorizing the menus and button meanings
moreover, writing basic batch script or shell scripts, is very easy and built-in feature, as opposed to having to figure out some kind of third-party macro recorder, if you want to automate some action (like "make a backup of the file, and open it in my text editor")
As someone who's pretty much a noob, one thing that really made me appreciate/miss the CLI was having to deal with things going wrong on GUI programs a lot (and also Windows. Because Windows.) and doing a bit of poking driver issues with the terminal.
The difference between:
"Try to infer from the very limited graphical feedback and limited options with poor to nonexisting documentation if something went wrong and, if yes, what"
and "in 99% of cases you will get an output that's at least useful to look up and you can generally look up what does what because there's documentation and you're not expected to be clairvoyant"
is absolute night and day for troubleshooting.
What most people miss out when using the CLI is that they tend to not know about the suggestions, auto-completions, interactive help, etc. in the shell. Using a shell like "fish" opened my mind. I realized that we don't necessarily have to run a command before determining that it's wrong, or have to look up the manual to see the correct options. The shell can suggest me the possible flags, combinations, etc. while I type. The CLI still has a long way to go. We can have some sort of GUI that helps us construct the command, that'd be cool!
"It comes with build in dark mode" Aha that's a gooooooooood selling point guess I must start using it LoL
@@zanewaits8026 (cough)Apple(cough)
@@andmicbro1 lmao
You can easily automate stuff in command line through scripts. That's something that's a lot harder to do on the GUI.
Why does it exist?
"AW-TOE-MAY-SHUN"
No way any seasoned programmer in their right mind would spend hours clicking boxes and windows open rather than have a script that does everything for them.
Well also spend 10 hours writing the automated task, which, when using a gui/manually doing it, would have taken an hour.
@@sohaibalam3185 depends what the task is, along with the scale & frequency the task is run. If the task is weekly, and normally takes an hour when done manually, spending 10 hours writing the task once breaks even in less than one quarter, which is a pretty decent return on effort.
I hope not many people still do automation in command line. The syntax is so outdated and unintuitive. Python is much better.
@@saggitt It depends really. If you're trying to do regular sysadmin tasks python will require a lot of learning and effort especially when you're dealing with OS side stuff.
@@KushagraJuneja True
Having Bash is why I use a MacBook Pro for work instead of my windows PC. I develop server software to run on Linux and being able to execute and compile the same code in MacOS is just nice. It has the convenience of a Linux environment on the shell, with the App support and programs that you'd like to get in the GUI (like iMessage). I've tried DOS and PowerShell and it's not for me, but I still love my PC for gaming.
Anthony should make his own channel
Thank God they still exist.
Not going to lie as a programmer I have come to love the command line, it’s just so much more strait forward and works seeming-less
Anthony, there's a people that never used XP even, or even worse didn't foolishly updated to Vista 😂 yeah, we are old 🤣
Vista released 14 years ago. Damn we're old.
@@hdkv I guess we are, but I wouldn't say old, I'll rather say that we have expiriance 🤣
Windows NT 3.5 on a DEC Alpha. Those were the days...
Thanks for sharing. By the way, you are pretty good at narrating, Anthony. It is easy for us to tell when a presenter doesn't know his stuff very well, but really likes to be on camera. You know your stuff and you have a talent for making the listener feel at ease.
Powershell lets you do _insane_ things. Whilst i was playing with it after my first exposure using exchange console and deciding i wanted to learn more, i wrote a script that:
Goes onto a network folder or share, digs X levels into the folder hierarchy, reads all the folder permissions (acls), discards the admin / server groups, reads the members of the groups from AD and dumps the lot into a fully formatted excel template (using excel itself as a com object) into a file which easily represents folder names, groups, what permissions those groups have and whose in them. Instant folder permission report.
To do that by hand on 5TB of files and folders takes weeks or a paid product.
Script does it in 20 mins, and is free (barring the time it took me to write/test it)
"you're probably familiar with bash"
*Screenshot of ZSH with grml config like the one that ships with the Arch Linux installation ISO*
Anthony, that is an extremely niche troll.
(Obv I arch btw*)
God dammit. There had to be _one_ of you “arch btw” people in the comments. Of course.
I use Endeavour btw…
Anthony is the best for ESL speakers, he speaks very clearly to me.
As a Software Developer, thank god that the command line still exists, it simplifies many of my tasks
Actually, learning the command line gave me a much better understanding of system hierarchy and how a computer actually works. So i benefited from learning it.
Big thing is you can chain together commands so that complex tasks happen without user intervention. GUIs just mostly can't do "rename these files, copy the ones with in the name, transcode them to these formats and shutdown after you're done". With GUI, you'd have to sit there until each step finishes so you can do the next one.
With command line, the computer actually works for you.