lessは常に大文字と小文字を区別しません


21

で大文字と小文字を区別しない検索を使用する方法を見つけるためにしようとless私が見つけたserverfaultの上でこれを

それは私の質問に完全に答えているようです。問題は、次のとおりです(openSUSE 13.1; 458未満)。

エイリアスlessを作成しましたless -WiNSが、変更しました。しかし、それを呼び出してcommand less fileも何も変わりません。コマンドラインにオプションpsがもうないことを確認し-iました。

答えが言うように、lessヘルプ(を押すh)は-ilessでも使用できると述べています。それを一度使用するとless、大文字と小文字を区別しない検索に変更されたことがわかります(それは正しいことです:何も変わりません)。2回使用するとless、大文字と小文字が区別される検索に変わったことがわかります。そして、それから、それは最初からあるべきように機能する。与える-iコマンドラインで二回しても、動作しません。

ここはどう?


1
GNU lessは私にはそのようには動作しません(つまり、デフォルトでは大文字と小文字が区別されます)。エイリアスされていませんか?psそれを確認するためにどのオプションを使用していますか?
goldilocks

1
うーん これに気づいたことはありませんが、あなたは絶対に正しいです。FOOを検索するだけFOOで検索できますが、検索&を検索しfooます。およびでも。fooFOO-i-WiNS
slm

@goldilocks pscommand less)オプション-WNSがないので、これは/をps隠す問題ではないと確信しています。ここに介入する可能性のある設定ファイルの可能性すら持っていないようです。-i-Iless
ハウケレイジング

@slm "-with with -i"は、-iまさにそれを行うことになっているため、ちょっとおかしいです。面白い質問です:あなたの少ない一致していますFOOためfoo なしには -i
ホークレイジング

いいえ、それは他の方法で動作します。FOOのみ一致しFOOます。私にはバグのようです。
slm

回答:


31

コマンドラインからこれを有効にする方法はわかりませんが、内部にいるlessときに、-iコマンドをに与えることで、必要な動作を切り替えることができますless

トグル -i

      SS#1        SS#2

検索/blah/BLAH

      SS#3       SS#4

探している /Blah

      SS#5

どうやら、あなたの検索の末尾に-i

less prompt> /search string/-i

参照資料


それも私には有効ですが、私はそれを2回入力する必要があります。openSUSEのバグレポートを書くと思います。
ホークレイジング

@HaukeLaging-終了して戻ってもデフォルトのままであるようですが、その動作を確認できますか?
slm

いいえ、しかし、私は興味深いものを見つけました(ただし、この「バグ」とは関係ありません):-i検索後でも使用できます。強調表示が変更されます(まだアクティブになっている場合)。
ホークレイジング14

@HaukeLaging-ああ、そうです。そのため、表記は他のツールと比べて少し気味が悪いです。/search string/-i
slm

1
サフィックスが機能しないようですless 487 (GNU regular expressions)(Ubuntu 18.04以降)
Ruslan

5

マニュアル(私のlessバージョン444用)には次のように書かれています。

      Options are also taken from the environment variable "LESS".  For exam‐
   ple, to avoid typing "less -options ..." each time less is invoked, you
   might tell csh:

   setenv LESS "-options"

   or if you use sh:

   LESS="-options"; export LESS

   On  MS-DOS,  you don't need the quotes, but you should replace any per‐
   cent signs in the options string by double percent signs.

   The environment variable is parsed before the command line, so  command
   line  options  override  the  LESS  environment variable.
       On  MS-DOS,  you don't need the quotes, but you should replace any per‐
   cent signs in the options string by double percent signs.

   The environment variable is parsed before the command line, so  command
   line  options  override  the  LESS  environment variable.  If an option
   appears in the LESS variable, it can be reset to its default  value  on
   the command line by beginning the command line option with "-+".

したがって、環境変数LESSがどこか、おそらくシェルの「ドットファイル」に設定されているかどうかを確認します。また、less -+i-iデフォルトにリセットする必要があります(大文字と小文字が区別されます)。それで大文字と小文字が区別されるようになった場合はalias less=less -+i、おそらく、と一緒にできますalias lessi=less -i


0

-iオプションを渡すことで、開始回数を減らして大文字小文字を無視できます。検索文字列に大文字が含まれていない限り、大文字と小文字は無視されます。Ubuntuヘルプページの lessの概要は次のとおりです

   -i or --ignore-case
          Causes searches to ignore case; that is, uppercase  and  lowercase  are  considered
          identical.   This  option  is ignored if any uppercase letters appear in the search
          pattern; in other words, if a pattern contains uppercase letters, then that  search
          does not ignore case.

   -I or --IGNORE-CASE
          Like -i, but searches ignore case even if the pattern contains uppercase letters.

lessの他のバージョンは、-iの解釈が異なる場合があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.