bash端末で複数行コマンドをコピー、貼り付け、編集する


3

引数が多いコマンドでは、Web上で読みやすくするためにスラッシュエスケープ改行を使用することがあります。これはばかげた例です

echo -n \
"hello" \
"world"

この「適切に」貼り付けおよび編集する方法がわかりません

あなたが手に入れるbashに貼り付け

$ echo -n \
> "hello" \
> "world"

OSXで戻る矢印キーを使って移動すると> "world"、最初の2行ではなくでのみ行を編集できます。通常、コマンドを修正するために一時ファイルに貼り付ける必要があります。

任意の行を編集できるこの貼り付けを実行するためのより良い方法はありますか?bashこれがうまく機能するように設定しますか?


CRとLFを表示するエディタが必要です。ペーストに<kbd> ENTER </kbd>があるため、これは不可能であることがわかります。CRLFなしでそれを一行に入れてください、そして、あなたは問題を抱えません。
h0ch5tr4355 2015年

回答:


6

このようなコマンドが複数行に渡ってあるときに、bashをemacsモード(通常はデフォルト)ctrl+x ctrl+eで使用している場合は、EDITOR変数で指定されているように、お気に入りのエディターが開きます。

あるいは、あなたがタイプすることができますfc、これはあなたがタイプした最後のコマンドでエディタを開くでしょう、そしてあなたが望むようにそれを編集することができますそしてそれから終了してください、そしてそれは実行されます。


エディタのショートカットは気の利いたものです。タイプfc
pseudo647 2015年

それはあなたのbash履歴の最後のコマンドのエディターを開くことです、それはbash組み込みコマンドです
Pierre-Alain TORET 2015年

素早いプロトタイプ作成にはうってつけですが、最後のコマンドを修正または編集する必要があるとすぐに、すべてのフォーマットが終了したので、最終的には完全に混乱します。
熱狂的なエリジアム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.