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.

  • blue_potato@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    3 months ago

    It happens to you, to me and to every UNIX user since the 70s. Your system is (or should be) full of docs and tools to get help. One thing that I noted over the years, when we have new people at work, is that they don’t known how to get help from programs or they don’t known how to get help from their systems and when they struggle with anything, doesn’t matter how basic, they go to the web for help. I always show them this: apropos man help

    What was that command to compress files? apropos compress Oh! it was gzip

    What was that command to do whatever with the GRUB? apropos grub Oh yeah! update-grub

    What about that command to download files? apropos download Oh! it’s wget

    The next tip should be learn how to use and navigate in the man pages, man have it’s own man page; man man

    There are different sections, section 1 is the default, you don’t need to specify, so you can just; man bash

    But if you want to get help from configuration files you should type; man 5 sysctl.conf

    Also, almost every program have a built in help compiled with the program code, you usually call it with --help or -h, sometimes just help and other times just call the program without parameters and it should print it.

    Other people already suggest the cheat sheets, very useful especially for programas like vim or emacs, some of them come like a template to create a cube, so you print it and then craft it (like an origami) and you can have it in your physical desktop.

    Last thing; be patience, your are in the rigth path, there’s always more than one way to do things, you just need to find your own way.

    • LovableSidekick@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      3 months ago

      I made a comment about how easy it was to learn VMS was (an 80s/90s OS). How do I print a file? I’ll try PRINT. Okay, that works. How do I make 6 copies? PRINT /COPIES=6. Great! But how do I print to a file? I’ll try PRINT /OUTPUT=filename. Well whaddya know!

      I loved that OS like a brother. Sadly it eventually went the way of every proprietary system.

      • blue_potato@lemm.ee
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        This reply made me smile. You are not going to believe me but I’m a millenian… and I worked with OpenVMS (yes, you guess rigth, in a bank). May I tell you? Yes, sorry;

        2012, first week as a SysAdmin in that hell bank, I made the mistake of saying “My fetish are old OS and computers” (this is true), “Well, we have this four VMS baremetal machines that nobody wants to touch and if they fail we fuck up all”. After learning to be quiet and don’t speak too much I found a VMS manual in TPB or some other site (I remebered downloading it as a torrent) and started using the pre ones (two of this machines where pre and two prod). I found that AWK was installed and a POSIX Korn Shell was sleeping there and nobody knew it, with only that I did a lot of stuff like Nagios custom monitoring (yes, this machines wasn’t in the monitoring system, if there is not a red dot isn’t broken) and automated things like the IPLs. I’m not going to say that VMS is a brother, but I feel comfortable with it even for a UNIX admin. The best part of this boring story is that, some months ago I was chatting with one old coworker that is stills in that bank, they still have this machines and they still use my shitty scripts for monitoring and getting data and statistics, can’t believe (and a little proud of) that a OS that was developed before I was born is still up and running my programs.

  • x00z@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    3 months ago

    I have around 10 “linux extract tar archive” online searches last year alone.

  • Commiunism@beehaw.org
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    you don’t need to remember anything, except commands you use the most often but even then it becomes muscle memory after a while. If you ever need some specific command to use, just look it up online.

      • thingsiplay@beehaw.org
        link
        fedilink
        arrow-up
        0
        ·
        3 months ago

        Then use the commands help or read the local man document. In example for grep it would be grep --help and man grep. You don’t need an online connection for this.

        • jimbolauski@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          3 months ago

          Containers become problematic, some don’t have man pages or other common commands installed. Debugging applications on them requires a wide knowledge of all sorts of primitive commands and workarounds to achieve common tasks. My biggest fear is a container without grep.

          • thingsiplay@beehaw.org
            link
            fedilink
            arrow-up
            0
            ·
            3 months ago

            Discovering tools is not what the question and solution presented here was. But for that question, I recommend downloading a book about Linux as a reference or something like that. Or a basic tutorial series to read and remember basics about Linux.

            You can also just list the ls /usr/bin directory to see what programs are there.

            There is actually a command to search the man pages for terms, to list the commands: apropos

            $ apropos -s 1 search
            apropos (1)          - search the manual page names and descriptions
            find (1)             - search for files in a directory hierarchy
            flatpak-search (1)   - Search for applications and runtimes
            gamemodelist (1)     - search for processes running with gamemode
            rg (1)               - recursively search the current directory for lines matching a pattern
            zipgrep (1)          - search files in a ZIP archive for lines matching a pattern
            

            Note: I cut some parts out in the output to make it shorter. The option -s 1 means, it will list man pages from section 1 only.

      • Commiunism@beehaw.org
        link
        fedilink
        arrow-up
        0
        ·
        3 months ago

        use your phone to look up the commands on how to get internet working again

        alternatively, connect computer to your router via cable

  • taiidan@slrpnk.net
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    repetition…repetition…repetition…repetition…repetition…repetition…repetition…repetition…lol

    • thingsiplay@beehaw.org
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times.

      ~ Bruce Lee

  • Kidplayer_666@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    Man is great to check quickly what something does. I use atuin as my shell history to make it a lot easier to search

  • Atemu@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    You could make aliases that are easier to remember for you.

    If you e.g. had trouble remembering that mv does a rename, you could alias rename=mv. Ideally just put whatever you would have googled in “linux command to x” as the alias.

    That’s the power of Linux; you can tweak everything to your preferences and needs.

    • hotspur@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Wild had no idea—this is so cool. If you do this, does the original command also still function (so like I could rename to something easier for me, but hopefully transition to the real deal at some point/ properly follow help forums or suggested pasted commands)

      • Atemu@lemmy.ml
        link
        fedilink
        arrow-up
        0
        ·
        3 months ago

        The originals remain untouched.

        It is possible to override existing commands with aliases though. This is useful for setting flags by default. I have alias ls='ls --color' for instance such that whenever I run ls, it actually runs ls --color, providing colourful output.

        Note that aliases are only a concept within your command line shell though. Any other program running ls internally won’t have the flag added and wouldn’t be able to use any of the other aliases either (not that it would know about them).

        It’s very easy to program your own “proper” commands though on Linux. If you had some procedure where you execute multiple commands in some order with some arguments that may depend on the outputs of previous commands, you could write all that as a shell script, give it some custom name, put it in your $PATH and run it like any other command.

        • hotspur@lemmy.ml
          link
          fedilink
          arrow-up
          0
          ·
          3 months ago

          Also very cool—the building in default modifiers to the command. Thanks for the great tips.

  • mbw@lemmy.ml
    cake
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    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.

  • Libb@jlai.lu
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    3 months ago

    Hi,

    I’m a Windows user of all life

    I was a Mac user for 35+ years (still am, partly). It took me a little while to get used to new names/commands in Linux but that’s to be expected. And it is not much an issue anymore ;)

    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 kind of commands exactly? I mean, I don’t know that ‘commands’ are different from one distro to the other’ as they all use the same apps. So, beside the name of a few specific ones (like, maybe the app installer).

    What would be your recommendations to help me. Are there tools to help this issue ?

    My two sole advice:

    • don’t try to remember too many commands. Instead, focus on the ones you use daily or very often. After you get those memorized you can always decide to memorize more… or not memorize them at all. I don’t bother remembering them, why would I when I can easily use Ctrl+F and instantly find them the moment I need them?

    How do I do? I keep a text files in which I store all the stuff I seldom use but still want to be able to find in case I need it someday. To make finding them easier, I put descriptive titles and comments with each command. And that’s what I’m searching for, not the command name ;)

    • If you’re talking about Terminal commands, learn to create your own aliases they will let you remember a short name instead of full commands. I have a few lengthy commands and some scripts (for example, to compress/convert images) that I I regularly use. I don’t remember them. I’ve saved them in a .sh file that I can either call through a Terminal or simply by a right-click in my File Explorer (it’s Nemo and they’re called ‘Actions’, on Linux Mint)
  • The Bard in Green@lemmy.starlightkel.xyz
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    3 months ago

    Idea 1:

    Print out some of the various CLI cheat sheets and pin them to your wall by where you work on your computer.

    Maybe this one:

    Then, print a page with commands you commonly use, either with more complex syntax or that aren’t on the sheet. (Like, “ls” is on there, but “ls -s -h” is not, for example.

    Idea 2:

    Write bash scripts to automate some of your commonly used tasks. Comment them. Imagine someone else is going to have to use them, even if you’re the only one who’s ever going to look at them. Not only will this help you learn lots of commands and force you to describe what they do (which will help you retain the information), it will be there as a record of how it works that you can go back and look at months or years later, to remind yourself how to do something.

    • some_guy@lemmy.sdf.org
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Yes, write automation. This will lead you to learning new commands that solve problems as you go. Debugging until they work correctly also helps make them more familiar. This is the best way to learn for sure. At least in my own experience, could be different for you, but I strongly suspect this’ll work well.