各行が端末の最後に達する新しい行を挿入せずに、Windowsコマンドプロンプトから複数の行をコピーすることは可能ですか?
たとえば、コンソールに次の行があるとします。
c:\very_long_path_here\more_path_here>command_i_want_to_copy -with -some
arguments that wrap over lines.
これを選択してコピーすると、「some」という単語の後に改行が表示されます。手動で削除する必要があります。
ハードラップされた行ではなく、解釈/印刷される形式でデータ(解析されるコマンド、印刷される出力)をコピーする方法はありますか?
この点で、Windowsコマンドプロンプトはよく知られています。 Linuxターミナルの動作を取得することはできません(少なくともLuuのコメントによると、Windows 10より前の場合)。
ただし、cmd.exeにはあいまいな機能があります。選択した領域を右クリックして(コピーするときに)Shiftキーを押し続けると、コピーされたテキストのすべての改行が削除されます。
単一の長いコマンド行(複数の端末行にまたがる)を選択する場合は、これで十分です。ただし、常にすべての改行が削除されるため、適切な方法で複数のコマンドライン(またはスクリプト)を選択することはできません。
詳細な手順:
別のオプションは、コンソールウィンドウのタイトルバーのコンテキストメニューを開き、[プロパティ]に移動して、画面バッファーの幅を折り返さないように十分大きくすることです。 (9999が最大値のようです。)
これを頻繁に行う必要がある場合は、プロパティの代わりにデフォルトのオプションを変更できます。
もちろん、この方法は、行が9999文字より長い場合は機能しません。
Windows 10でこれを有効にするには:
「cmd」または「Windows Powershell」ウィンドウのいずれかで、プロパティに移動し(左上のアイコンをクリック)、「行の折り返しの選択を有効にする」オプションを選択します。
私のPowershellプロンプトはnotを有効にしましたが、有効にするとうまくいきました。