Replace Last Command in Shell

By  on  

Whether I fat-finger a command or my MacBook Pro keyboard's keys don't want to respond like they should, I'm frequently misspelling commands.  What's more frustrating is that many of these commands are long, taking making fixing theme time-consuming.

Luckily a Twitter follower is looking out for me, providing me a quick command for fixing the misspelled command:

~ $ crul davidwalsh.name
-bash: crul: command not found
~ $ ^crul^curl
curl davidwalsh.name
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://davidwalsh.name/">here</a>.</p>
<hr>
<address>Apache Server at davidwalsh.name Port 80</address>
</body></html>

The ^ command usage above returns fixes the spelling from the previous command, executes the command, and as a bonus, adds the correct command to history.

Small tips like these and git checkout - make my command life experience so much better.  What's your favorite command line trick?

Recent Features

  • By
    Responsive and Infinitely Scalable JS Animations

    Back in late 2012 it was not easy to find open source projects using requestAnimationFrame() - this is the hook that allows Javascript code to synchronize with a web browser's native paint loop. Animations using this method can run at 60 fps and deliver fantastic...

  • By
    39 Shirts &#8211; Leaving Mozilla

    In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...

Incredible Demos

  • By
    CSS Transforms

    CSS has become more and more powerful over the past few years and CSS transforms are a prime example. CSS transforms allow for sophisticated, powerful transformations of HTML elements.  One or more transformations can be applied to a given element and transforms can even be animated...

  • By
    Elegant Overflow with CSS Ellipsis

    Overflow with text is always a big issue, especially in a programmatic environment. There's always only so much space but variable content to add into that space. I was recently working on a table for displaying user information and noticed that longer strings were...

Discussion

  1. Hi David,

    someone pointed me to https://github.com/nvbn/thefuck/blob/master/README.md last time I complained.

    Kind regards

    André

  2. Daniel

    Hi David,

    it works fine, but does not update bash’s history

    My favorite command is CTRL-R and reuse older commands

    Abrazos, Daniel

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!