• Dave@lemmy.nz
      link
      fedilink
      arrow-up
      1
      ·
      6 hours ago

      Just checking, because I learnt to type before I worked this out, and because surely someone reading doesn’t know: press tab. Bash will fill in file names from your current directory.

      E.g. say you have files fred1file, fred2file, jim.

      Type f then press tab, it will fill to “fred”. Then press 2 and press tab again and it will fill the full “fred2file”.

      Have a play, it works in heaps of situations.

    • ch00f@lemmy.world
      link
      fedilink
      arrow-up
      28
      ·
      14 hours ago

      Shit is usually a pain in the ass. The challenge is divining how much of a pain in the ass something has to be that someone else might have made a solution for it.

      I didn’t know you could ctrl+shift+c to copy in the terminal until a month ago when my linux n00b wife said "there has to be a better way to do this. I’ve been right clicking to copy for 10 years.

    • grrgyle@slrpnk.net
      link
      fedilink
      arrow-up
      6
      ·
      11 hours ago

      Congratulations! I remember where I was when I first learned it (in a noisy server room at the back of a machine shop).

      Now pair it with FZF for fuzzy finding – it’s surprisingly easy to set up, just following any guide. It’s insanely useful. I find myself even doing things like typing:

      $ xinput --disable $(xinput --list | grep -i touchpad | grep 'id=[0-9]\+' -o | cut -d= -f2)  # Disable synaptic touchpad trackpad pointer
      

      commands with these like comments on the ends as sort of “tags” so I can ctrl+r search for them later. Yes, I know I could just use a named function, but this is like the step just before that–before I know if I’ll be issuing the same command all the time, or just for the next couple weeks. (This one was from when I was resting my notebook on my laptop.)

      • oddlyqueer@lemmy.ml
        link
        fedilink
        English
        arrow-up
        3
        ·
        7 hours ago

        I like this; I have a lot of commands that I don’t use often enough to justify an alias, but still need to rerun all the time. thanks!

    • lmmarsano@lemmynsfw.com
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      11 hours ago

      As usual, that’s documented (we can RTFM).

      Before trying ctrl-s, you may want to disable software flow control: run stty -ixon & add it to your initialization files. Otherwise, you’ll pause terminal output. ctrl-q resumes terminal output.

      stty reveals terminal special characters

      $ stty -a
      ⁝
      intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; discard = ^O; …
      ⁝
      

      These special characters/keys often perform special functions. To illustrate

      • ctrl-d on empty input typically exits/logs out of interactive terminal applications (including shells)
      • ctrl-u discards input (useful for inputs like password prompts that don’t echo input back)
      • ctrl-v inputs next character literally (such as tab)