I’m a Windows user of all life. But I love Linux. And these last two years after so many time I started learning it in deep . But one thing is bugging me is that I am those persons that has bad times remembering names, words… imagine commands… Even after using it so much I remember some basics but I’m struggling a lot and I have to go back to notes constantly to do some basic operations. Even worst after trying multiple distro from from different upstreams that commands are … Different. What would be your recommendations to help me. Are there tools to help this issue ? My guess is that A LOT of people happens the same. And it’s one of the reasons Linux has such a slow adption . Because is excellent and full of capabilities.
Use Fish (very good autocomplete) and aliases
I think 90% of the comments here are “write your own notes“ - which is possibly over simplistic.
Everyone’s different but IMHO:
The brain is better for imagination than long term storage. So if you’re stuck trying to remember some obscure command(s), it’s just better to use something else to store that on.
But when the brain understands the core concepts well enough, the details come together as habits (where repetition comes in).
So, if you’re unable to recall something, take some time to think / remind yourself about the underlying concepts and why that’s the command - next time it’ll be easier, eventually it’ll be effortless.
I had to learn some strange concepts for work during a deep technical troubleshooting session on a client’s system and the commands were like just facemashing the keyboard… I’ve no idea what those commands are now (written down), but I can recall what / why I was doing them and that was the key… for me.
(Using computers since '80s)
But when the brain understands the core concepts well enough, the details come together as habits (where repetition comes in). This is the way. Understanding core subjects then is easier to connect and recall stuff.
I have around 10 “linux extract tar archive” online searches last year alone.
Exactly!
Stick to one distribution. Using notes is fine. Make aliases if necessary. You will learn with repetition.
tldr is good for remembering how to use a command, once you find it.
I use a snippet manager called keep.
It runs in the terminal, and helps remember commands. I use it for remembering commands with lots of flags and parameters that i don’t use often. But it can be used to remember any command you need.
You can also add comments to each command to remind you what it does.
I add the command i need to remember with
keep new
And when i forget it i can run
keep list
To get a list of commands.
It can do more, but i’ve only ever used those two functions.Use ctrl-r a lot (navigate up/down with ctrl-p and ctrl-n) and try to “fuzzy-match” previously used commands. There is a very useful command called
fzf
which, while only a search program at heart, can be configured to complement this nicely.I partly remember the first letter and press arrow up.
I use ZSH shell with oh-my-zsh. It autofills the rest with history at the point you write. So arrow keys make you scroll through the history which is beginning with the thing you wrote
Same with fish.
Fish is even more advanced with this.
But I still prefer ZSH because of shell language being incompatible with fish. I dislike learning that thing, when I have everywhere new Linux shells with bash
This is my boat with fish shell at the moment, like I started learning how to make scripts with it, and I very quickly realized that it’s definitely a minority shell, and that it’s not worth it to make scripts for, it’s missing functionality that normal bash has and has zero functionality with existing Scripts so I’m finding myself having to switch to bash anyway for most scripting.
I never really tried zsh, I might tinker with it if it does have that functionality as that’s the part I really like about fish
I also heard that the same functions are also possible in bash with plugins.
Maybe start with “oh-my-bash”?
I’d never replace bash with fish, but it’s a great tool for when I don’t know or cannot remember a command of argument.
First of all, we are ALL in the same boat. Newcomers from whatever OS to professionals alike, we all struggle to remember commands and their idiosyncratic syntax.
Now that this is out of the way, namely that you are not “special” in having difficulties there, a little challenge. How do YOU normally do when you are learning something new? Typically when people do that, e.g. at school or while doing a professional training, they take notes. Are you doing that? I know it might sound “strange” but learning Linux is… well fundamentally learning so yes you can use whatever tools and techniques for that too. So… here are MY notes https://fabien.benetou.fr/Tools/Shell which will probably be rather pointless to you but at least prove that I’m not suggesting something I didn’t try first.
TL;DR: yes, use all the tools & tricks recommended here (IMHO with reverse-i-search first) but don’t forget to actually take notes!
Thank you! i will check them. Yep im a long time user of Obsidian and i have notes everywhere. But going to them , when i dont have much free time to spend, it also feels like a tool would be amazing to simplify the get into complex command.
It’s a balance, namely you are probably wasting time if you jolt down literally everything… but also what you don’t write down and forget, have no way to backtrack, will also waste time.
IMHO it’s the process itself that matters, namely that by taking the time to write down, organize, lookup, you gradually have to do it less and less because you are more conscious about what you know, what you don’t, and adapt accordingly.
If you do find a better way, based on a tool or not, please do share back!
This. If you do a search for Linux command wallpaper, you’ll find a version I used to get myself going.
My old team was a small windows team and a large *nix team. I was always scrounging for work, and I had been playing with Linux and bsd/Mac for a awhile. My manager added me to the patching team with a shadow. I was good within a few months for most things.
It’s best if you have a goal in mind, like with programming.
I remember the basic filesystem commands like ls, cp, mv, rm, cat etc, but I generally don’t remember much more than that. Even so, I still use the GUI file manager/software center pretty often, there’s no reason why I have to force myself to use the terminal all the time.
I have an app on my phone to search for commands that I barely use and don’t remember. Don’t worry that much about it if you aren’t a professional system administrator or other such jobs.
The gorilla bash llm thing has been immensely helpful.
Amazing, thank you
deleted
history | grep whatever
is quite useful when you just barely remember a command or the files you used it on.
Man is great to check quickly what something does. I use atuin as my shell history to make it a lot easier to search
You know atuin is legit because the demo gif on their site is using GruvBox, the most bestest color scheme.