一致する行を少なくコピーする方法は?

一致する行を少なくコピーする方法は?

マウスで選択するには長すぎるので、一致する行をLessにコピーしたいのですが、Lessで別の方法がありますか?例えば

ファイル:test.txt内容:

line1: 12312sdfas23414123
liie2: aaaaaxxxxxxxxxxxxxxxxxxxxxxxfsdfsdfasdf
sdfasdfasdfadsfasdfdfdfd........
line3: 134sdgas1212

まず「aaaaa」を検索してから、その行をクリップボードにコピーするにはどうすればよいですか?検索してこれを見つけました。https://stackoverflow.com/questions/26626910/copy-special-line-from-lessしかし、私の要件に適用する方法がわかりません。事前にありがとう

更新:基本的な方法はありますか?私はCentos 6にxclipまたはpbcopyがインストールされていないことがわかったからです。

ベストアンサー1

lessvエディタを実行し、ファイル名と現在の行番号を提供するコマンドがあります。以下を使用して実行されるコマンドをオーバーライドできます。

export LESSEDIT='sed -n "%lp" %g | xclip -selection clipboard'

今すぐ入力すると、現在のファイル(%g)の現在の行(%l)を印刷(p)してファイルにパイプするためにv使用されます。この設定を保存して実行する小さなシェルスクリプト(たとえば)を作成できます。sedxclipmylessless

#!/bin/bash
export LESSEDIT='sed -n "%lp" %g | xclip -selection clipboard'
exec less "$@"

chmod +x myless実行可能にしてPATHディレクトリに保存することを忘れないでください。

おすすめ記事