• incompetentboob@lemmy.world
    link
    fedilink
    arrow-up
    20
    ·
    1 year ago

    Upvote for “sudo !!” No one ever seems to know about “!!” And it’s such a useful command.

    I personally found out about it when I wrote a bash script that contained a password with two exclamation marks and I wondered why the last command kept being concatenated to the end of the password.

    Also checkout thefuck for fixing other various typos

      • QuazarOmega@lemmy.world
        link
        fedilink
        arrow-up
        8
        ·
        edit-2
        1 year ago

        It just expands into the last command you put in your shell, so it’s useful for retrying a command that you want to prepend with sudo for example, if you realize you needed elevated privileges, or maybe you want to pipe something in it, pipe it through something, redirect its output etc.

    • WildlyCanadian@lemmy.ca
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      My install of Endeavour doesn’t have it, and I haven’t been able to figure out what package to install to add it. Also haven’t tried very hard cause it’s just a minor convenience but if anyone knows …

      Oooh it’s cause I’m using fish isn’t it? Is there a way to add it?

      • Ellen@discuss.tchncs.de
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        Had to check since this is something I’ve been wondering myself, but apparently not possible. From the fish FAQ:

        Because history substitution is an awkward interface that was invented before interactive line editing was even possible. Instead of adding this pseudo-syntax, fish opts for nice history searching and recall features. Switching requires a small change of habits: if you want to modify an old line/word, first recall it, then edit.

        However, for the use case here, with sudo:

        As a special case, most of the time history substitution is used as sudo !!. In that case just press Alt+S, and it will recall your last commandline with sudo prefixed (or toggle a sudo prefix on the current commandline if there is anything).

  • 21kondav@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    1 year ago

    Some people never get to experience the joys of squinting into a screen 4 inches away from your nose to inspect a long ass command. It’s the simple things in life

  • Illecors@lemmy.cafe
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    I used to do sudo !!, but then I’ve started learning the shortcuts of my shell a bit more - Ctrl+A jumps to the beginning of the line, which, technically speaking, is a saving of 1 (!) keystroke, compared to Shift+1+1.

    This has also led to discover that emacs is actually much more useful compared to vim as it uses the same shortcuts.

    • hedgehog@ttrpg.network
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      If you already submitted the command, you’ll have to hit Up first to have a line to jump to the beginning of, though, so it’ll be the same number of keystrokes either way.

      I do the same thing you do, just with vi-mode keystrokes (up, then esc-I).