Bashコマンドの最初の単語を素早く変更する方法
ワークフローに多数の反復的なアクションが取り込まれている場合は、ワークフローを改善および合理化する方法を探すのが害になることはありません。今日のSuperUser Q&A投稿には、自分のワークフローを改善しようとしている読者のための有益な提案がいくつかあります。.
本日の質疑応答セッションは、コミュニティ主導のQ&A Webサイトのグループである、Stack Exchangeの下位区分であるSuperUserの好意により提供されます。.
スクリーンショットの提供:Matt Joyce(Flickr).
質問
SuperUserリーダーコインは、bashコマンドの最初の単語を素早く変更する方法を知りたいです。
bashでワークフローを改善したいのですが、同じコマンドを別の実行可能ファイルに対して実行したいことがよくあります。.
いくつかの例
1.)Git
2.)バッシュ
私は命中できることを知っています Ctrl + a それから デル 最初の単語を削除しますが、もっと早い方法があるのではないかと思います.
コインがbashコマンドの最初の単語を変更するより速い方法はありますか?
答え
SuperUserの貢献者Spiff、Hastur、jjlin。そしてGustavo Giraldezが私たちに答えを持っています。まず、Spiff:
!$は前のコマンドの最後の単語に展開されます。だからあなたはできる:
または
あなたの例はたまたま最後の言葉を繰り返しただけなので、$はうまくいきました。繰り返したい引数がたくさんあり、最初の単語だけを変更したい場合は、!*を使用することができます。これは、0番目以外の前のコマンドのすべての単語に展開されます。.
bashのmanページの「HISTORY EXPANSION」セクションを参照してください。そこにはたくさんの柔軟性があります.
Hasturからの回答が続きます。
警告を追加したい(上のSpiffからの答えを見てください) !$を使用すると、実行している回線を完全に視覚的に制御することはできません。特にあなたがミスプリントを被った場合、結果は時々有害になる可能性があります。それは拡大するためにそれが歴史から必要とするものを取ります.
そのため、最初のコマンドを最初に空白を入れて書いた場合、このコマンドはおそらく履歴から終わらないでしょう。 !$を指定して新しいコマンドを実行すると、シェルは最後に入力したコマンドラインからパラメータを取得せず、履歴の最後の部分からのみ取得します。.
これはもっと役に立つ単語とコマンドです。.
それからjjlinからの答え:
Ctrl + a 行の先頭に移動する Alt + d 最初の単語を削除する.
そしてGustavo Giraldezからの私達の最終的な答え:
ショートカットのショートカットは実際には メタ+ d, そして メタ 通常はにマッピングされている Alt Linuxマシンで。そうでないプラットフォームでは、 メタ 修飾子は使用することです ESC 接頭辞として。あなたはについての詳細を読むことができます メタキー ここに.
説明に追加するものがありますか?コメントで音を消す。他の技術に精通したStack Exchangeユーザーからの回答をもっと読みたいですか?こちらのディスカッションスレッドをチェックしてください。.