マウスで選択するには長すぎるので、一致する行を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
less
v
エディタを実行し、ファイル名と現在の行番号を提供するコマンドがあります。以下を使用して実行されるコマンドをオーバーライドできます。
export LESSEDIT='sed -n "%lp" %g | xclip -selection clipboard'
今すぐ入力すると、現在のファイル(%g)の現在の行(%l)を印刷(p)してファイルにパイプするためにv
使用されます。この設定を保存して実行する小さなシェルスクリプト(たとえば)を作成できます。sed
xclip
myless
less
#!/bin/bash
export LESSEDIT='sed -n "%lp" %g | xclip -selection clipboard'
exec less "$@"
chmod +x myless
実行可能にしてPATHディレクトリに保存することを忘れないでください。