The pessimist complains about the wind; the optimist expects it to change; the realist adjusts the sails.
William Arthur Ward
I am doing a startup!
Cross-browser testing from your browser
I have written my third book!
Perl one-liners explained
You're viewing a comment by Amos Shapira and its responses.
Response to cjk:
1. Usually a command you want to fix in this way (or just generally want to build up on top of a previous command) is pretty recent in the history so you'll see what your "!" notation is going to catch.
2. If you are not sure what's going to happen after your fix then you can always add ":p" to the end of the command to cause the changed command to be printed and added to the history without actually executing it, then if you are happy with it then do "!!" (or ^R Enter if you insist).
$ echo a b c d
a b c d
echo a b c replaced
Notice that the second echo was printed by the shell but wasn't actually executed. Then you can do:
echo a b c replaced
a b c replaced
And now it was executed.
I'm not discarding the use of interactive editing altogether - I use it a lot. But there are instances when the "!" notation is more useful. e.g. when you want to use the same argument(s) from a previous command but with a completely different command - interactive editing will require you to erase the old command before you edit the new one, skipping backwards and forwards around the parts you want to keep. With "!" and the various ways to refer to previous command's arguments it's easier and saves lots of repetitive typing (I'm saying this from personal experience, not as a theoretical claim).
(why do I need your e-mail?)
It would be nice if you left your e-mail address. Sometimes I want to send a private message, or just thank for the great comment. Having your e-mail really helps.
I will never ever spam you.
(Your twitter name, if you have one. (I'm @pkrumins, btw.))
* use <pre>...</pre> to insert a plain code snippet.
* use <pre lang="lang">...</pre> to insert a syntax highlighted code snippet.
For example, <pre lang="python">...</pre> will insert Python highlighted code.
* use <code>...</code> to highlight a variable or a single shell command.
* use <a href="url">title</a> to insert links.
* use other HTML tags, such as, <b>, <i>, <blockquote>, <sup>, <sub> for text formatting.
Type the first letter of your name: (just to make sure you're a human)
Please preview the comment before submitting to make sure it's OK.
Peteris Krumins' blog about programming, hacking, software reuse, software ideas, computer security, google and technology.
Reach me at:
Or meet me on:
Subscribe through an RSS feed:
(what is rss?)
Subscribe through email:
Enter your email address:
Delivered by FeedBurner
I am being sponsored by Syntress since 2007! They bought me an amazing dedicated server to run catonmat on. If you're looking web services in Chicago area, I highly recommend the Syntress guys!
I love to read science books. They make my day and I get ideas for awesome blog posts, such as Busy Beaver, On Functors, Recursive Regular Expressions and many others.
Take a look at my Amazon wish list, if you're curious about what I have planned reading next, and want to surprise me. :)
See all top articles
See all downloads
See more detailed list of recent articles
See more detailed category information
See more detailed list of all articles
catonmat's source code.
If you are interested in advertising on catonmat.net, contact me.