Mastering the command line? A few observations. First, consult and take notes (yes, even seasoned terminal veterans forget syntax.) Secondly, embrace tab completion. It’s your friend, and a surprisingly effective substitute for remembering every single command. Third, the true test: procure a VPS or remote server and exclusively use the command line. No GUI crutches allowed. It’s a digital wilderness, and you’ll learn to navigate it.
Lastly, and this is non-negotiable: keep a terminal window permanently resident on your desktop. Consider it a vital organ, deserving of its space. It’s a constant reminder of the power you wield, and a readily available portal to a world beyond the pretty buttons.
On that front: to developers-
Please make sure you include bash completions for your tools
Hehe, I’m doing this all the time now ! 3 years ago when I started my linux/self-hosted server journey with debian: CLI only !
Was difficult at times and had a few breakdowns (most got fixed the next day… Sleep/taking some time off really helps !!!)
One thing I’m still bad at… Is taking notes. Haven’t found a good way take IT notes. And I tried sooo many different approaches…
Breakdowns are inevitable; a good night’s sleep is often the most elegant solution. :) I utilize Zim (for note management) as plain text remains a perfectly serviceable option, imo.
Stumbled across a game that teaches the command line as you play it. Seems like a good place to share https://gitlab.com/slackermedia/bashcrawl
personally, writing and saving simple scripts - IE project based learning - is how i got time in the saddle.
To things that helps no mater your skill level the tab key is your best friend and man pages are great but if those are overwhelming install the package tldr then you can use the command tldr and the command you are trying to run to give you helpful examples of how to use that command.
Also old users don’t remember long commands if we use a command more than once. You save it to your bash alias file to create your own commands.
tldr is great, sometimes you can’t remember the exact syntax for a certain command and just need a quick reminder as well.
Also old users don’t remember long commands if we use a command more than once. You save it to your bash alias file to create your own commands.
A good example for this is docker compose -f when you work alot if compose files ! Having an alias for docker compose -f as
dcfsaves hours a month xD
As someone who started with nothing but command line - Timex Sinclair, Apple IIe, DOS, I can’t even relate to the concept of being scared of command line.
I think just doing it more, and thinking it’s cool to interact more directly. At least that helps me. I do feel bad for dyslexic peiple though, it’s a lot harder for them to use CLI.
Yeah that was it for me. Just keep regular backups and bear in mind that you’ll probably break stuff at first. But once you get the hang of it, it’s like a whole other level of control over your system.
Also I’m not dyslexic but would things like tab completion and aliases help maybe? I sometimes shorten often-used commands with aliases just for convenience (as an example, I use
rsynca lot, particularly the commandrsync --ignore-existing -ravwhich I just shorten torsto save time) so maybe that could also be used to avoid mis-spelling?Thats a good idea, i have not made any aliases yet. Also remembering all of those aliases is another challenge ha. I keep a text file named commands on my desktop with a whole bunch of commands I forget.
I have some mapped to super simple aliases too like
e1to reboot,e2to shutdown etc. I don’t remember why I started doing that, but that way I only have to remember which number does what lol.
I have no clue… I grew up on Windows 3.11 and I thought Windows was kinda lame while MS-DOS was the coolest thing ever because you typed things like magic spells 😅
This right here (more or less - first home PC was Win95, but it still relied pretty heavily on DOS, esp for games). I loved the RPGs where you typed in your actions, too.
I set it so when I hit CTRL-Tilde it drops down from the top of the screen.
Quake-style, baby.
CTRL-tilde or CTRL-backtick?
Yes
Have someone on Google doing the thing I need to do.
/to search man pages was a gamechanger
deleted by creator
tldr is very useful
Also, knowing vim keys is useful because a lot of terminal programs use them.
When you aren’t in a rush try to do stuff in command instead, looking for a file? , try to find it in command. Need to copy and move a folder? Don’t use your file manager, use the command line instead.
Eventually you will piece together the bits you learn and it starts to make sense, and then you feel like a God. Lol.
I 100% agree. I’m still relatively new but this helped me become much more confident.
I am a Linux noob as far as the desktop goes. But I’m quite comfortable in the terminal because for years I’ve maintained a home server running Debian. After I install the OS, I unplug the keyboard and monitor and the only way to talk to that box is through SSH.
Step 1: Use a youtube tutorial for the basic commands. Don’t worry, you’ll forget about them soon enough. But doing them once, helps with muscle memory.
Step 2: When in need to do something, copy/paste from Q&A/forums various commands that they suggest for your problem. Your basic knowledge from step1 will come back as you do that.
After a few days, you’ll be understanding what’s going on and how the whole thing works in an abstract level.
I would recommand to never copy paste but retype so you have the commands on your finger memory.
Also don’t be afraid to
--helpeverything. It give more option for commands you know quicker than theman.
2 things got me comfortable on command line: 1) A great cheat sheet (one from Ubuntu: https://ubuntu.com/download/server/thank-you); 2) Practice all the commands from the cheat list regularly. Last page is something for Pro version, but first 2 pages are great for a begginer. There is a typo at a command (or it was in a past cheat sheet): “Sudo change <username>” instead of “sudo chage <username>”. It helped me most to get comfortable with terminal. Enjoy!
tl;dr: Gradual exposure over time.
I got used to it through work, as I had to ssh into a server to run simulations. That mainly involved navigating the file system and text editing (which I used vim for) to make some basic Python and bash scripts, including sed and awk. The latter two I never got comfortable using, and haven’t really touched since.
I was using macOS at the time, and after using that for work, the terminal in macOS got at first less scary and then a preferred way of accomplishing certain tasks. On my work Windows computer I started missing having a proper terminal around, and I eventually found Cygwin and later Git Bash to give me that terminal fix in Windows as well. Especially with the latter I noticed few differences and could use it to a large extent as I would have on my then Macbook.
2-3 years ago I was in need of a new computer, and at that point a laptop with Linux on it was not a very scary prospect. That is by no way saying I went into Linux as an expert, far from it, and I am still very much a newbie - but opening the terminal to work with things is not at all a barrier, which helps a lot if you use Linux and want to be able to do some changes from the defaults. If you don’t want that, I think you can go far these days without opening the terminal, but it is certainly a good skill to have.
Knowing the commands





