- ベストアンサー
UNIXで、直前のコマンドの一部を置き換えるときに
UNIXでは、 ^AAA^BBB と入力すると、 「直前に実行したコマンドの、AAAをBBBに置き換えたものを実行する」 というようになっている、と思います。 さて、私がWindows上で使っているMSYS(UNIX風の環境を作り出すもの。)では、 直前のコマンドに、AAAが2箇所以上あるときに、最初の1箇所しか置き換えてくれません。 それはUNIXとしては普通の仕様なのでしょうか。 AAAが2箇所以上あるときに、それをすべてBBBに置き換えるためには、どのようにすればよいですか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
^AA^BB で前回実行のコマンドのAAをBBに置き換えて実行 というのはUNIXというよりもシェル(cshやbashなど)の機能かと思います。 ^AA^BBで最初のAAだけ置換、というのは、cshやbashではそういう仕様です。 全部のAAをBBに置き換えて実行するには、bashだと !!:gs/AA/BB/ でOKかと思います。