There is a feature in termux (android) history command which when you use !371 to execute the command 371 in the command history it prints that command in the prompt instead of executing it, then you just press enter to execute it. I found it very useful because many times I want to execute a command that is in the history but with some modification, I’m using Konsole in my desktop PC and I couldn’t find an option to make such a thing. The only one I found is executing history -p !371, but that just print the command to stdout and not to the prompt itself.

EDIT: the answer is !371:p then up and the command 371 shows up in the prompt. Thanks Schizo!

      • corvusOP
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        28 天前

        Because learning Linux takes time, I’ve been using Linux and the command line many years and it’s the first time I come across that command. I even made an alias for ‘history | grep’ to search for commands in history 😂

  • Crestwave@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    edit-2
    30 天前

    As the other commenters have mentioned, this is part of the shell configuration and outside the scope of the terminal emulator.

    You can configure this yourself by adding shopt -s histverify to your bashrc.

  • thingsiplay@beehaw.org
    link
    fedilink
    arrow-up
    6
    ·
    1 个月前

    https://www.gnu.org/software/bash/manual/bash.html#Miscellaneous-Commands

    Add to your .bashrc following lines:

    bind '"\C- ":shell-expand-line'
    bind '"\C-x":edit-and-execute-command'
    
    • Control+Space: Now you can expand variables, aliases, !492 history commands, the tilde without executing the line. Now you can make changes to the command.
    • Control+x: Opens the current command in an external editor (such as Vi, or whatever is setup for VISUAL or EDITOR variable). Now you can edit the command and if you save the temporary file and exit editor, the modified command will be executed. If you do not save, the unmodified command before launching the editor will be executed.
  • eldavi
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    1 个月前

    i have a need for something like this too; but i’ve been making due with crtl+r and that’s been good enough to prevent me from taking action on it.

    • corvusOP
      link
      fedilink
      arrow-up
      2
      ·
      1 个月前

      I didn’t know that, it’s not what I was asking but it’s a cool command, thanks.

      • eldavi
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 个月前

        careful with it; i need the thing that you asked for too and crtl+r has been effective enough to prevent me to creating it.

    • ikidd@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      29 天前

      One option is Atuin which you can also use with a server connection (self-hosted or not) to sync bash history across computers.

      • eldavi
        link
        fedilink
        English
        arrow-up
        1
        ·
        29 天前

        It’s so much better when other people build the things I need because they actually get done instead of just making due w an inferior alternative. Lol

        thank you for making me aware of it.

        • ikidd@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          29 天前

          Tell me about it: I have great ideas that I just need other people to bring to fruition so I can use it.

          • eldavi
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            28 天前

            i’m just as lazy as your average developer. lol

  • imogen_underscore [it/its, she/her]@hexbear.net
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    1 个月前

    not sure if it’s what you’re looking for but on my Konsole (I think it’s actually just a bash feature), Ctrl+R lets you search through your command history and easily pull up past commands. it’s called reverse-i-search if you wanna check it out.

    • corvusOP
      link
      fedilink
      arrow-up
      2
      ·
      1 个月前

      I was just told, but for the quick test I did I doesn’t seem to let me modified the command before executing it.

      • imogen_underscore [it/its, she/her]@hexbear.net
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 个月前

        yeah I think you’re supposed to be able to but it seems borked for me too. my terminal kinda freaks out when I try to move the cursor to the right to edit the command.

        edit the borking was for sure because i had a broken custom $PS1. i reset it to something normal and i’m able to edit the commands pulled up with Ctrl + R just fine now by hitting the right arrow key.

        • corvusOP
          link
          fedilink
          arrow-up
          1
          ·
          1 个月前

          That’s another great option, thanks.

  • jbrains@sh.itjust.works
    link
    fedilink
    arrow-up
    3
    ·
    1 个月前

    Alternatively, use fc 371 to open the command in an editor and take your time figuring out how you might want to change it.

    • corvusOP
      link
      fedilink
      arrow-up
      1
      ·
      1 个月前

      Yeah, it’s bash. But !12345 executes the command 12345, but I don’t want to execute it, just print it to the prompt.

      • schizo@forum.uncomfortable.business
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        1 个月前

        Does !12345:p do what you want?

        Edit: that also makes hitting the up arrow result in whatever command that was, so if you wanted to edit the line or whatever, you could !12345:p, up, then edit and execute.

        • corvusOP
          link
          fedilink
          arrow-up
          2
          ·
          1 个月前

          ohh now I got it…yes thats it! Thanks!!

        • corvusOP
          link
          fedilink
          arrow-up
          1
          ·
          1 个月前

          It doesn’t do anything, just prints a blank line.

  • schnurrito@discuss.tchncs.de
    link
    fedilink
    arrow-up
    2
    arrow-down
    2
    ·
    1 个月前

    Things like that aren’t a feature of the terminal emulator, but of the shell. Try to find out which shell you’re using on Android, maybe try using that one on desktop too.