man
改行は通常、次のようにパラメータ/フラグ/オプションセクションに含まれています。
-s
silent
-s
上の例のように、後に改行文字を含む項目をどのように見つけることができますか?
目的は、-s
テキストブロック内で発生する状況(つまり、後に改行が来ない状況)を防ぐことです。
答え1
どのページャを使用するかによって異なります。
less
ポケットベルを使用している場合、検索文字列(または/
を入力したとき?
)は実際には拡張正規表現(less
特定の拡張子を含む)です。
正規表現として、-s$
行末のaと一致します(またはで呼び出すと、検索はデフォルト-s
で大文字と-S
小文字を無視しますが、検索パターンに大文字が含まれていない場合、入力は大文字と小文字を区別します)。一致し、その後にゼロ個以上の空白文字が続き、行が終了します。less
man
-i
-s[[:space:]]*$
-s
ポケットベルを使用すると、most
検索は行の内容内にある一般的な文字列であるため、選択の余地はありません。
man
環境変数を使用して、フォーマットされたマニュアルページを表示するために使用するページャを指定できます$PAGER
。 fromを実装すると、環境変数よりも優先されるオプションを使用して指定man-db
できます。環境変数自体は変数よりも優先されます。-P
$MANPAGER
$PAGER
デフォルトで使用されるポケットベルは、システムとman
実装によって異なります。私のシステム(Debian)では、コマンドが呼び出されます(man
fromman-db
pager
dpkgの代替デフォルトではless
)ですが、いくつかのless
特定の設定があります(多くのLESS*
環境変数を設定します)。
フォーマットされた出力を直接パイプすることもできますman some-topic | less
。または起動時にパターン検索を開始します。ただし、出力をリダイレクトすると、man-dbを使用して実装するとフォーマットが無効になります。less
man some-topic | less '+/-s$'
less
man
代わりに、less
環境変数を使用してオプションのリストを提供できますが、これには特別な意味が$LESS
あるため$
、エスケープする必要があります。
LESS='--use-backslash +/-s\$' man -P less some-topic