this post was submitted on 29 Dec 2024
96 points (100.0% liked)

Linux

1261 readers
82 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 5 years ago
MODERATORS
 

I am a Linux beginner/amateur and I have sort of had enough of copy and pasting commands I find on the internet without having a good understanding of how they actually work.

I guess my end goal is to be able to comfortably install and use arch Linux with my own customization's and be able to fix it when things go wrong.

What tips/ideas do you have for getting better at navigating the terminal, and getting a better understanding of how the os works. What is a good roadmap to follow? And how did you, advanced Linux user, get to the stage your at now?

Edit: my current distro is bazzite just in case you were interested and thanks for all the replies you are all really helpful.

top 50 comments
sorted by: hot top controversial new old
[–] boredsquirrel@slrpnk.net 27 points 2 weeks ago* (last edited 2 weeks ago) (1 children)
  1. You can always use man command and just read through it. If you want less text, use curl cheat.sh/command (learn how to use aliases) or the tools tldr and cheat
  2. Install the fish shell, it makes using the terminal waaay easier, out of the box.
  3. Install Alpaca flatpak, and use tinyllama or bigger LLM models. Tinyllama is already very sufficient at explaining linux commands and more, and runs fine on my reasonably powerful and modern laptop. Other models may be slow as fuck.
  4. Use the terminal only. Log out, Ctrl+Alt+F2 and login, then use some tools.
$pwd
cd
echo
ls
cat
nano
less
more
chmod
chown
#your package manager
lsblk
dd #be careful!
udisksctl
lsusb
lspci
curl
wget
...

Note: use the man for these tools and often multiple tools do the same thing

  1. There is this online terminal game/quiz but I cant find its name.
[–] thingsiplay 16 points 2 weeks ago (1 children)

Install the fish shell, it makes using the terminal waaay easier, out of the box.

Not a good idea if the goal is to learn more about Linux. Fish is not compatible to and is different to Bash in some ways, that it would be hard once not using Fish. Also getting help or sharing scripts with others will be problematic, when having a problem and researching it. For someone coming in to Linux and wanting to learn about it, I highly recommend to learn about Bash first and use it at least for months before even thinking about a custom shell. I used Fish too (and I miss some features), so its not like I wouldn't know what it is.

Install Alpaca flatpak, and use tinyllama or bigger LLM models.

Alpaca is nice. GPT4All is also another one (and one that I prefer). Either way, both are good. But again like previous point, I do not recommend to install and use Ai modesl (LLMs) to learn about Linux and to get used to it. Especially the smaller models often hallucinate and lie with false claims. If you don't know it better and are currently learning, this could be a problem. I highly discourage from installing and learning with an Ai model alongside when you are new to a topic like Linux. Its also not like there wouldn't be enough good material out there anyway.

[–] boredsquirrel@slrpnk.net 3 points 2 weeks ago (1 children)

Fish is just a shell, you can still write and execute bash scripts

Fish is rewritten in Rust btw

Also the syntax is waay better, it should totally replace bash

[–] thingsiplay 5 points 2 weeks ago (1 children)

My point is that Fish is not standard Linux tool. If the goal is to learn more about Linux, it makes more sense to learn about Bash first. I'm not against Fish. For a newcomer its just confusing when researching stuff or reading others scripts in Bash and constantly think about the differences in Bash and Fish. Or if you want to share a script with someone who does not have Fish. I'm not saying Fish is bad or anything like that. I'm just saying for a newcomer its not a good idea to ignore Bash and learn Fish first for someone who is interested into learning more about Linux and its eco system. Fish itself has the better language, no doubt about it and is actually better than Bash. But the quality is not my main concern in the reply.

[–] boredsquirrel@slrpnk.net 1 points 2 weeks ago (2 children)

As I said. Fish can just be a shell. I only write bash scripts. All bash scripts have #!/bin/bash at the beginning so it doesnt matter.

I dont know about fish errors. If something doesnt work, I enter bash and then run it again. I enter exit when I am done.

That does happen but the workaround is easy

Apart from that, instant suggestions, history, arguments and available commands already help a lot.

load more comments (2 replies)
[–] Max_P@lemmy.max-p.me 21 points 2 weeks ago

Just don't copy paste the commands. Really! Just take the time to understand what the command does, read the manual, and rewrite it yourself instead of pasting it. That alone will help a fair bit and can start guessing what it should be.

After a while of doing that it stops being a "paste this command to make the service run" and becomes "ask systemd to enable and start the service". You start associating editing files in /etc with "will probably need to slap a sudo in front of that one", you start mentally replacing nano/vi/vim/emacs/nvim/sed with your preferred way of editing the file, because you absorb the concept of "this command edits a text file".

[–] Libb@jlai.lu 15 points 2 weeks ago (3 children)

I guess my end goal is to be able to comfortably install and use arch Linux with my own customization’s and be able to fix it when things go wrong.

What tips/ideas do you have for getting better at navigating the terminal, and getting a better understanding of how the os works. What is a good roadmap to follow? And how did you, advanced Linux user, get to the stage your at now?

You learn by doing and by failing. Like we learned to walk, to write, to drive, to kiss, to speak a foreign language, or even to lace our shoes (and, yep, even that was a heavy trial and error process for toddler-us back then).

  • Install Arch (in a VM, maybe) and while doing so read the Arch Wiki to understand each step, each action and the role of each app you're asked to install. The Arch Wiki is an impressively well done documentation.
  • Be fine knowing that it will take time to learn anything new (not just Arch, anything), you won't get good at it the first time. Don't rush it, take your time.
  • Be fine knowing that you will face issues and will most likely fail at some point, be it to instal Arch or in doing whatever new. There is no other way to learn, for all of us, than by failing and then trying again, over and over. Once again like we learned to walk (by falling on our butt), to lace our shoes (by making a mess) or to kiss (by not doing it great at first).

Learning takes time and efforts. Perseverance, and humility. There is no shortcut to learning anything that is worth learning, not just Arch. But the reward is also so much worth it. Einstein had to learn calculus, Da Vinci had to learn how to hold a paint brush, and Tolstoy like Flaubert had to learn to write and I'm willing to bet they all made mistakes while they were learning their respective craft.

Even without referring to geniuses: the first time I tried to install Arch I ran away screaming and swearing I would never touch that thing again. The second time, I had already managed to read a good chunk of the relevant part of the wiki and used it constantly at each step of the process. I still failed at it but at least I understood why I failed and I felt incredibly more... in charge, despite me failing. The third time, I managed to have it running, and to install most the packages I wanted. That was great. There was no fourth time as, as much as I love Arch (which is a lot), I quickly realized using it that constant updates were not what I wanted from my OS and apps (I'm an old-ish user with very basic needs, I'm not even that much of a geek to be honest). So, I switched to the complete opposite of Arch (Debian, another great love of mine I must say). Still, learning and using Arch taught me a lot about Linux in general and about... myself.

[–] Strit@lemmy.linuxuserspace.show 6 points 2 weeks ago (1 children)

This is really good advise and it all boils down to one attribute. Patience.

Don't get disheartened when something does not work the first time. Take a step back. Look at what went wrong and then try again, hopefully without doing the same mistake again.

Learn the basic tools of Linux and Bash/Posix. cd, ls, cp, mv and rm are some very basic tools, but it is what we use 80% of the time.

[–] Libb@jlai.lu 4 points 2 weeks ago* (last edited 2 weeks ago)

This is really good advise and it all boils down to one attribute. Patience.

Thx. Yes, patience is key. As is the ability to

Take a step back.

Failing is fine because it's not about us, it's not personal. It never is. It's about learning something and about the process.

load more comments (2 replies)
[–] kyub@discuss.tchncs.de 12 points 2 weeks ago* (last edited 2 weeks ago) (1 children)
  • To learn Arch, install it from scratch (without archinstall), it'll force you to read the Wiki and learn a lot of necessary commands in the process. After the installation, just keep using it. Using a Linux distro full-time as the only installed OS is the best way to keep at it and truly learn it over time. There's no magic bullet here. Just keep using it and solving problems or issues as you go, learning more and more stuff as you go. If you need other OSses as well, run those in a VM. I don't recommend dual-boot setups.

  • Don't blindly copy/paste commands you don't understand. Always try to understand them first. Some commands can be very disruptive or even destroy your configuration. If you don't understand it or are able to adapt it so that it fits to your particular configuration or system, you can EASILY damage a configuration, or even make your system unusable. Also, some people like trolling other people and deliberately share harmful commands. Generally, test potentially destructive commands or complex commandlines before actually running them.

  • Document major config changes that you do. This is useful because you'll be able to undo certain changes or even replicate your current system configuration fast when you change distros or have to reinstall in the future. For example my current Arch-based setup is fully documented in form of an almost-directly executable shell script. It does require some interactions but very little. If I ever have to reinstall this system, or upgrade my hardware, it can be done insanely fast and it'll have the exact same configuration. This goes from basic partitioning and encryption all the way up to dotfiles and individual program configurations.

  • Don't feel the need to learn hard/advanced tools like Vim or Emacs unless you really think you're getting an advantage from that and aren't hesitant to put in the time and effort to learn them. Most people don't need to use them. They're amazing tools but you need to be prepared to lose quite a lot of time to learn them before you can become productive with them, and this might not be a tradeoff that's useful for every single user. You can also get away with much simpler tools, like nano (as a console-based editor) or whatever programmer's text editor you want.
  • Similarly, whether a pure WM or compositor plus assorted tools compared to a full desktop environment is worth it for you or not, is up to you. There's no wrong or right answer here. I've tried out pretty much everything and these days use KDE Plasma because I like the consistency and integrations and dislike having different, inconsistent stand-alone tools for panels, menus, notifications, wallpaper, file manager and so on. But again, there's no wrong or right answer here. Just what makes more sense for you. It's worth learning how to be able to configure and use a minimalistic setup, for sure. So trying it out doesn't hurt and increases your knowledge overall. In general, in the Linux world it's good to always know enough to not be screwed once some component suddenly doesn't work anymore. For example, a competent Linux user should be able to deal with (temporarily) not having a GUI and fixing his system via commandline.

  • A minimalistic, DIY distro like Arch can be amazing to learn everything, if you want to do that at least. If you just want a working desktop system with as little effort as possible, then don't do that. But if you intend to learn every detail, then a distro like Arch is better suited for that goal than a "bloated", fully pre-configured distro like Mint or Ubuntu is. Because Arch is much simpler on a technical level than those are. It's much easier to understand e.g. the relatively simple package building process on Arch than it is on Debian/Ubuntu-based distros. But this "simple" explicitly refers to technical simplicity or minimalism. Most users expect something else when they hear "something is simple". Arch is not simple as in beginner-friendly, but it is simple in terms of technical complexity, which is why many advanced users and tinkerers like it because it doesn't stand in their way. It also means though that you HAVE to learn many things, e.g. how to configure a firewall, because it doesn't come with any preinstalled by default. With Arch, the admin is supposed to know about everything and configure every component himself, at least on a somewhat basic level.

  • If you want to go to even more details, you could also try out a source-based distro like Gentoo or Crux, which can also be a great learning experience, but it's even more details regarding compilations of each package, dependencies, compile-time options, etc. you have to deal with than with a minimalistic binary-package-based distro like Arch, so whether that's useful for you or not is up to you of course.
  • While we're at it: LFS (Linux from Scratch) is not a distro per se, it's a guide on how to build your own distribution from scratch. It's VERY time intensive and not recommended unless you truly want to learn how to build a complete distribution from scratch, or maybe start your own distro some day which isn't based on another existing distro.
[–] Jode@midwest.social 2 points 2 weeks ago

documented in form of an almost-directly executable shell script

I'm annoyed with myself for not thinking of doing this

[–] fragrantvegetable@sopuli.xyz 12 points 2 weeks ago (1 children)

Haven't seen anyone mention https://overthewire.org/wargames/bandit/ yet. It's a Linux shell game where you need to solve problems using shell commands that only requires an ssh client on your machine: you ssh into the first server, solve a problem, and the solution points you to the next server. It starts easy (e.g. read out this file using cat) but gets hard quickly. But you can always look up solutions when you're stuck. It gives a good idea what certain commands are used for and how they can be combined in powerful ways.

[–] Yppm@lemy.lol 3 points 2 weeks ago

This reminds me of a site called hackerslab back in the 2000s. I think you had to ssh in to some Korean server and try to get the password for the next level.

[–] blob42@lemmy.ml 11 points 2 weeks ago (1 children)

start from man man and learn to use man pages. Get used to lookup man pages for any topic before checking on the internet

[–] stinkape@lemm.ee 8 points 2 weeks ago

This is it. You’re likely not going to get away from needing help from time to time. Instead of focusing on trying to know everything, focus on knowing where to find what you need. It’ll click from there with time.

[–] DickFiasco@lemm.ee 9 points 2 weeks ago

It sounds a bit nerdy, but dedicate some time just to learning a specific command once in a while. Start with something straightforward like ls. Read through the man pages and try out all the different options for it. After a while, you'll master quite a few commands and will be able to string them together to perform more complex tasks. It's definitely easier learning the system piece by piece like this. I used to learn by just jumping right in to a complex task, but I ended up with just a superficial understanding most of the time. Now days I try to be more deliberate about reading all the documentation and actually learning the tool/command/etc.

Also, Arch has the archinstall script that greatly simplifies the install process if you need it. You'll definitely learn more doing it manually though. I've been using Arch as my daily driver for a year now and I love it.

[–] why@lemmy.sdf.org 8 points 2 weeks ago (1 children)

The tldr cli (tldr.sh) is a great way to get familiar with options of differ programs.

[–] tmpod@lemmy.pt 2 points 2 weeks ago

Very useful, even for someone who has been using Linux for many years. Sometimes you just forget or need that tool you rarely use. tldr can be much handier than parsing a man page when you're in a pinch.

I use the tealdeer implementation, but any is fine really.

[–] SnotFlickerman@lemmy.blahaj.zone 7 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

For one, stop copying and pasting commands and start learning about the basics of the shell.

Here's a basic tutorial from UC Berkeley: https://computing.stat.berkeley.edu/tutorial-using-bash/

Things you'll want to focus on:

  1. Delimiters
  2. Syntax (Bash by default, but the syntax for whatever your chosen shell is)
  3. Switches
  4. Path (absolute and relative)
  5. Operators (Pipe will become one of your most heavily used)

Then once you learn to do some basics, I would hammer repetition. Just force yourself to do things you would usually do via GUI by command line. I started with the basics of updating my system way back in the day with sudo apt-get update && upgrade

Just type type type type all those commands until remembering them is muscle memory.

[–] thingsiplay 3 points 2 weeks ago (1 children)

Just type type type type all those commands until remembering them is muscle memory.

For learning purposes, also try not to use aliases. Because using alias would undermine the learning process of knowing what and how its been done. I recommend (as you said) typing it out over and over again and use aliases on a later stage of your Linux learning only (maybe after weeks at least).

Exactly, shortcuts like aliases or tab completion really should be saved for after you've familiarized yourself, so you're less likely to make a mistake or tab complete to the wrong command etc.

[–] shirro@aussie.zone 6 points 2 weeks ago* (last edited 2 weeks ago)

I have been using Linux since the early 90s. I don't know it all. I read man pages. I use -h or --help. I read the arch wiki. I read docs. I read source files and examples. Lots of reading. You will never know it all. There is too much information.

You need to know how to find information. It can be tricky. Knowing how to ask the right questions often requires you to know a bit of the answer.

Stumbling about trying to find answers is training the skills you need.

I think it helps if you have a programming background and IT support experience. Not just because you will understand more concepts and terms but because you have already developed some of those skills but some people come from other backgrounds and pick things up really quickly because they have well developed research skills.

[–] colournoun 5 points 2 weeks ago (1 children)

If you’re not already, use it as your main system. Don’t dual boot. Stop using windows and mac. When you run into something you need to do, figure out how to do it on linux. It will be slow going at first, but after a few months you will pick up more productivity than you had before.

Another commenter recommended the fish shell, but I disagree because fish is not posix compliant. Almost all of the shell script examples that you will find assume posix compatibility and will usually have to be modified to run with fish. Once you get comfortable with a posix-compliant shell, then maybe consider fish or another “modern” shell.

On the topic of shells, read the bash manual. It’s long and informative. You don’t have to memorize it, but be aware of the different concepts there, and refer to it when you need to. It’s pretty horrible as a programming language, but it’s what glues most of Linux together.

[–] pineapple@lemmy.ml 3 points 2 weeks ago (1 children)

I am still dual booting because some games I play just don't work properly but other than that I am doing everything I can on Linux.

[–] thingsiplay 2 points 2 weeks ago

To be honest, this is my recommendation as well. If you kill Windows and can't play your favorite games, then its more likely to give up Linux.

[–] fratermus@lemmy.sdf.org 4 points 2 weeks ago

What tips/ideas do you have for getting better at navigating the terminal, and getting a better understanding of how the os works

Running an OS as a virtual is liberating. Dive in, make mistakes, fix them (or not and have to reinstall or redo from the last save). No real consequences for exploring.

[–] fool@programming.dev 4 points 2 weeks ago* (last edited 1 week ago)

erasure edit: ok nvm, thanks

[–] secret300@lemmy.sdf.org 4 points 2 weeks ago

To be honest I've been using Linux for years and I still paste commands all the time. The only difference is that now when I am trouble shooting I know what command I need just not the options and how to use it

[–] powermaker450@discuss.tchncs.de 3 points 2 weeks ago (1 children)

I still find Tealdeer useful even now, it helps me get working with commands I know little about, more so than a manpage

load more comments (1 replies)
[–] warrenson@lemmy.nz 3 points 2 weeks ago

Explainshell.com is pretty useful for understanding shell commands you might find on forums.

[–] Onihikage 3 points 2 weeks ago (1 children)

I'm late to the party but have you seen Linux Journey? https://linuxjourney.com/

[–] pineapple@lemmy.ml 2 points 2 weeks ago

Thats really cool thanks.

[–] electric_nan@lemmy.ml 3 points 2 weeks ago

Start running servers if you haven't already. Use an old computer, or an SBC or VPS and setup some Linux servers. There's lots of different ways to do it, so mess around and break shit over and over. You can't help but learn that way, though I would highly suggest you take notes/documentation. This is a habit I'm trying to develop after too long :)

[–] AnnaFrankfurter@lemmy.ml 3 points 2 weeks ago (1 children)

Switch to rolling distro, it will break so many things with each update you'll learn stuff by fixing it. Also you can check https://overthewire.org/wargames/bandit/

[–] pineapple@lemmy.ml 2 points 2 weeks ago (1 children)

I thought rolling releases were still pretty stable to things really break that often?

[–] TheFadingOne@feddit.org 3 points 2 weeks ago* (last edited 2 weeks ago)

They can be really stable. I think your milage severely varies on how much you know what you're doing and how careful you are in respect to certain things.

Personally I've been using Arch for 5 years and I haven't really had any problems with things breaking on updates.

[–] _____@lemm.ee 2 points 2 weeks ago* (last edited 2 weeks ago)

I can tell you how I learned linux. be prepared to cringe.

  1. I installed Linux before going to school, I figured that if I used Linux as my main OS I would be less tempted to dick around and play games

  2. I eventually found a coop part time job as a dev. I used my own Linux machine, and being the star eyed young person I was I used arch.

this is the cringe part:

  1. I did dev work on arch Linux without fully understanding how it works and ran into multiple issues (none of which was because of arch). for instance my USB wifi driver was the dogshit broadcom ones so the "drivers" for it were kind of messed and I had to hack several things into get it to work.

I learned systemd, Linux kernel modules, dkpg, obviously more familiarity with bash and shell stuff

  1. I ran into issues with grub because FUCK grub. so I had to learn about boot loaders, fixing your install with chroot on a live usb, I also wrote step by step guides to untuck my particular problem just in case I run into it again

so moral of the story is.. dive in?

[–] rimu@piefed.social 2 points 2 weeks ago
[–] BaumGeist@lemmy.ml 2 points 2 weeks ago (1 children)

I will be using your example of Arch as a great stepping off point, because honestly imo the best way to learn is by having a project to work on

  1. RTFM - Read The Fucking Manual. Read the docs, read the code comments if need be. In the case of installing an OS, use the installation guide as a starting point; Arch's is on their wiki, and links to several other sections that go more in-depth about what each step does and why it does it.

  2. DuckDuck it - if you don't understand what something is or why you're doing it, search it. If you understand it completely, search it anyway and check the docs because no you don't, you just don't know how little you know. If you know why we do something and what function it fulfills, but not how... Then you're a power user.

Using your example of commands from the internet, break the command down into as many parts as you can, and figure out what each part does. If there's punctuation marks, don't assume you know what those are doing. man [command's name] is your friend.

  1. Do all of the above as often as possible, no matter how slow it makes progress feel. Learning these things the proper way now will save you from days, weeks and months of troubleshooting in the future. I mean it, literally at every step of the process.

  2. secondary sources are invaluable, but for this it might help to get into the best way to self-educate. The only gospel are the docs and/or manual that were written by the code/OS maintainers - primary sources - everything else is opinion.

Here's a source i agree with on the best way to self-educate, but keep in mind even Artem is still just a secondary source.

That being said, here's a few secondary sources that helped me understand how OSes work and why:

nand2tetris: build an operating system starting with logic gates and working your way up from there. It has a offshoot site that's slowly being rolled out, that implements it all in a gamified interface: nandgame

os-tutorial: build an OS from scratch

Linux From Scratch: Learn everything about Linux by building your own distro from the kernel up.

Unfortunately everything that taught about the behind-the-scenes aspects of OSes in general—and Linux in specific—were either projects like the above, or just seeing what came up in a DuckDuckGo, Youtube, forum, or wiki etc. search. Below are just resources that teach you about the "power user" level of knowledge, not "super user" but not your average user either.

Fireships' 100+ Linux Things you Need to Know: it's not particularly good on its own, but it does introduce a lot of concepts and vocab for you to then look up elsewhere

freeCodeCamp.org offers a lot of courses that will go over using Linux. None go too in-depth on the fundamentals of Operating Systems, but they will still introduce most of what you need to know for day-to-day use. I don't want to link them all, but just search for linux freecodecamp on youtube and find one that piques your interest. The longer, the more in-depth—you don't have to watch it all in one sitting.

  1. And of course, when all else fails: just ask. Participate in the community, don't be afraid of looking stupid. The only people that get no respect are the ones who refuse to accept others' help because they know better than those they're asking to help them. (ignore the gatekeepers who want to project their own need for an identity onto you)
[–] pineapple@lemmy.ml 1 points 2 weeks ago (1 children)

duck duck it

I use searx. Ok but seriously very helpful I will look into that.

load more comments (1 replies)
[–] nous@programming.dev 2 points 2 weeks ago

And how did you, advanced Linux user, get to the stage your at now?

Incrementally over time by reading the documentation and/or manuals of the commands I need to run and looking up how others solve the problems that I need to get other ideas about things (even, periodically, for things that I already know how to do to see if anyone has found a better way to do it or if a new tool has come out that helps). And trying things out/experimenting with different ways of doing things to find out what works well or not.

[–] PanArab@lemm.ee 2 points 2 weeks ago (1 children)

I guess my end goal is to be able to comfortably install and use arch Linux with my own customization’s and be able to fix it when things go wrong.

Why? I have been using Linux for nearly two decades and I am perfectly content with a low-config distro and desktop environment. You don’t have to use Arch but if you insist get a Steam Deck.

[–] pineapple@lemmy.ml 3 points 2 weeks ago (1 children)

I just want to get a better understanding on linux and I think arch is the way to do it. I love computers and I want to know them well.

load more comments (1 replies)

With arch, I'd recommend just jumping in the deep and and installing it, looking things up on the wiki when something goes wrong. Just do it in a virtual machine or on an old laptop or something to start with. I broke my previous distro (mint) by doing some really stupid stuff, and I decided to just go fuck it and install arch. I don't think I've ever learned as much about linux as that weekend.

I suppose that I was already pretty comfortable with the terminal since I was studying computer science at the time so I had a lot of reason to use it. I think the best way to use the terminal is to force yourself to use it, programming is great for this but you can try e.g. sorting your photos or mp3 files or something as practice too.

[–] PresidentCamacho@lemm.ee 1 points 2 weeks ago* (last edited 2 weeks ago)

on the tailend of a convo in in a discord recently I added a command to the "customize chatgpt" section to allow chatgpt to have a custom "man" like command similar to linux, but that works for all code or commands.

This makes chatgpt give me a Linux command or code snippet formated in a table explaining what each piece of the command does.

when a prompt is givin beginning with the word man followed by code or commands please respond with a table following these rules and nothing else: skip title row, No backticks around command components, No unnecessary rows, column 1 should contain the command component, column 2 should contain a brief command description

[–] Fubarberry@sopuli.xyz 1 points 2 weeks ago

I learned a lot by using a less common distro (solus). When I would have a problem, the solutions I could find on forums or arch wiki wouldn't apply to my distro directly, and I would have to look into the solution for long enough to understand what needed to change in order for the solution to work.

You can probably do this on any distro, just by not using commands you find online until you understand what they're doing and why that might fix your problem. Arch wiki is a great resource for any distro, even though it won't always be accurate for the distro you're on.

[–] phantomwise@lemmy.ml 1 points 2 weeks ago

Using tldr to learn commands. It gives you the information you are probably looking for in the man page but it's not buried among lines and lines and lines of arcane stuff and it's formatted in a readable way with helpful examples. Saved my sanity more than once.

I'm not saying "don't read the man pages", they are great way to get a deeper understanding of commands. But when you are just wondering what a command does and how it's commonly used, then a two lines summary + example is much more helpful than an essay going in minute details over everything.

Since it takes a lot less time than hunting the same info in the man page, you can run it before every command you are not familiar with, without too much hassle. Then if you want more info you can check the man page.

[–] InFerNo@lemmy.ml 1 points 2 weeks ago

This course by the Linux Foundation goes over the basics and I thought it was pretty good. I was a long time user of Linux when I came across this and wanted to see how much I really knew. It's very easy to follow and well structured

https://training.linuxfoundation.org/training/introduction-to-linux/

[–] Spyder@lemmy.ml 1 points 2 weeks ago
load more comments
view more: next ›