this post was submitted on 06 May 2025
111 points (95.9% liked)

Linux

54723 readers
597 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 3 weeks ago

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 " instead of "sudo chage ". It helped me most to get comfortable with terminal. Enjoy!

[–] [email protected] 1 points 3 weeks ago

in my experience, practice, practice, and more practice. but "just git gud m8" isn't really helpful advice. if you don't have half a decade on hand, i can make a few more practical recommendations.

a shell that can do argument autocomplete is your best friend. personally, i use zsh + ohmyzsh + fzf + fzf-tab, but i'm sure there are other configs, and i've heard ohmyzsh is a bit of a nightmare, though i haven't had too many issues.

so let's say you're running the one rsync command this month, and you forgot the args, just tab-tab and you can search through the arguments with fzf.

fuzzy search of autocompleted command arguments

[–] [email protected] 1 points 3 weeks ago

Doing hackthebox or other CTF challenges, Using CLI software, writing bash scripts.

[–] [email protected] 4 points 4 weeks ago (1 children)
[–] [email protected] 2 points 4 weeks ago* (last edited 4 weeks ago)

I've done. It had the opposite effect.

[–] [email protected] 1 points 4 weeks ago* (last edited 4 weeks ago)

C:[Enter]
###

[–] [email protected] 4 points 4 weeks ago

Good cushions

[–] [email protected] 5 points 4 weeks ago* (last edited 4 weeks ago)

Knowing:

  • pwd, ls, cd, cat/less, cp, mv, rm, rmdir, rm -rf, ls -lah
  • command --help
  • man command | grep thing I care about
  • bonus points if you have tldr command installed
[–] [email protected] 5 points 4 weeks ago

Have someone on Google doing the thing I need to do.

[–] [email protected] 4 points 4 weeks ago (1 children)

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 😅

[–] [email protected] 3 points 4 weeks ago

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.

[–] [email protected] 4 points 4 weeks ago (1 children)

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.

[–] [email protected] 2 points 4 weeks ago

I 100% agree. I'm still relatively new but this helped me become much more confident.

[–] [email protected] 10 points 4 weeks ago

Practice I guess. Especially using cli for specific tasks that is done more efficiently on there than the gui.

Moving files using regex for example is useful. Or finding files with specific phrases in them. Stuff like that

[–] [email protected] 1 points 4 weeks ago

I want a dropdown terminal la guake and yuake. Both options don't work on my Fedora. Because of this, I almost never use the terminal.

[–] [email protected] 2 points 4 weeks ago

Well, it's easy... just be born in the early 80s and grow up with home micros!

[–] [email protected] 11 points 4 weeks ago (1 children)

For me it was self hosting, aka not having a choice but to learn. I'll be dead before using remote desktop for that.

Also, self hosting gives you real motivation, because you actually need to do things, carry tasks, not just learning for the sake of it. Your efforts get immediately rewarded with functioning things.

[–] [email protected] 1 points 4 weeks ago

real motivation, because you actually need to do things, carry tasks, not just learning for the sake of it. Your efforts get immediately rewarded with functioning things.

Yes indeed, and that's true for any challenging skill to hone.

[–] [email protected] 2 points 4 weeks ago

Knowing the commands

[–] [email protected] 1 points 4 weeks ago

if the avg enduser has to temper in a commandline, your program is ass.

[–] [email protected] 4 points 4 weeks ago

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.

[–] [email protected] 5 points 1 month ago

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.

[–] [email protected] 4 points 1 month ago* (last edited 1 month ago) (1 children)
/

to search man pages was a gamechanger

[–] [email protected] 3 points 4 weeks ago (1 children)

using tldr instead of man 90% of the time to preserve your sanity

🎉 COLORS ! READABILITY ! CONCISION ! CONCRETE EXAMPLES ! 🎉

[–] [email protected] 2 points 4 weeks ago* (last edited 4 weeks ago)

tldr is very useful

Also, knowing vim keys is useful because a lot of terminal programs use them.

[–] [email protected] 1 points 1 month ago
[–] [email protected] 2 points 1 month ago

I’m trying to make it a regular thing but my problem is I like to get my hands dirty by working on projects. The snag is that I get stuck a lot due to not knowing basics. My personality gets in the way = get dirty and learn fast(not necessarily shortcuts). Maybe I haven’t found that right source to learn that not too beginner and not too intermediate. Maybe a cool cluster of small projects to setup your computer then environment to setting up projects to do your everyday life takes to what you really want to learn.

[–] [email protected] 37 points 1 month ago* (last edited 1 month ago) (3 children)

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.

[–] [email protected] 6 points 4 weeks ago

On that front: to developers-

Please make sure you include bash completions for your tools

[–] [email protected] 3 points 4 weeks ago (1 children)

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...

[–] [email protected] 2 points 4 weeks ago* (last edited 4 weeks ago)

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.

[–] [email protected] 2 points 1 month ago

I upvoted this comment multiple times while reading.

[–] [email protected] 9 points 1 month ago (1 children)

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.

[–] [email protected] 2 points 1 month ago (1 children)

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 rsync a lot, particularly the command rsync --ignore-existing -ravwhich I just shorten to rs to save time) so maybe that could also be used to avoid mis-spelling?

[–] [email protected] 1 points 4 weeks ago (1 children)

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.

[–] [email protected] 2 points 4 weeks ago

I have some mapped to super simple aliases too like e1 to reboot, e2 to shutdown etc. I don't remember why I started doing that, but that way I only have to remember which number does what lol.

[–] [email protected] 7 points 1 month ago

Using computers since before GUI was available... Sometimes I think we ought to go back to it

[–] [email protected] 8 points 1 month ago (1 children)

I set it so when I hit CTRL-Tilde it drops down from the top of the screen.

Quake-style, baby.

[–] [email protected] 2 points 1 month ago (1 children)

CTRL-tilde or CTRL-backtick?

[–] [email protected] 3 points 1 month ago
load more comments
view more: next ›