grepモードでlessを開始するには、bashでless +&/パターンを呼び出します(escape&)。

grepモードでlessを開始するには、bashでless +&/パターンを呼び出します(escape&)。

Lessでは、&/!DEBUG | INFOと入力して、大容量ログファイルからDEBUGおよびINFOパターンを除外できます。

エイリアス、bashスクリプト、またはコマンドラインからこの情報をどのように送信しますか?

> # start less at last ERROR
> less +?ERROR foo.log  # works from cmd line (takes me to last line matching ERROR )

# For greping in less (the & is the problem of course)
> less +&INFO foo.log  # won't work 
> less +\&INFO foo.log  # won't work
> less +'&'INFO foo.log  # won't work

私以外の実際のパターンは長く、いくつかのp1 | p2 | p3があります。

grep -vを使ってパイプを検索するのではなく、+Fなどを使用しないことを願っています。

答え1

less $'+&INFO\r' fileまたはless $'+&INFO\n' file

構文はbashのマニュアルを参照してください$'...'

答え2

いいですね。 $ '+&INFO'戦略を使用するのが最善のアプローチであるようです。

完璧にするために--use-backslashオプションを追加します。しかし、\ nまたは\ rを許可しません(毎回Enterキーを押す必要がないようにします)。

less +G --use-backslash +\&\!DEBUG\|INFO foo.log

関連情報