Bagaimana Anda melakukan pencarian case-sensitive menggunakan pengubah pola menggunakan lebih sedikit?

303

Sepertinya satu-satunya cara untuk melakukan ini adalah dengan melewatkan parameter -i ketika Anda awalnya kurang berjalan. Adakah yang tahu tentang beberapa peretasan rahasia untuk membuat sesuatu seperti ini berfungsi

/something to search for/i
mk.
sumber

Jawaban:

442

Anda juga bisa mengetikkan perintah -Isaat less sedang berjalan. Ini mengubah sensitivitas huruf untuk pencarian.

Juha Syrjälä
sumber
49
-i berarti abaikan case dalam pencarian yang tidak mengandung huruf besar sementara -I mengabaikan case dalam semua pencarian.
Constantino Cronemberger
14
"abaikan case dalam pencarian yang tidak mengandung huruf besar" disebut "smart case" dalam vim dan ack. Menambahkan ini di sini untuk googlability.
Andy Lester
@ HaloGoodbye, Anda tidak "menjalankan perintah" cukup ketik saja, saya bingung dengan frasa juga.
xception
-Iseperti pada tipe harfiah -Idengan kurang terbuka.
Dylan Landry
108

Anda juga dapat mengatur variabel lingkungan LESS

Saya menggunakan LESS=-Ri, sehingga saya dapat memompa keluaran berwarna dari grepdalamnya, dan mempertahankan urutan warna ANSI.

Fitur lain yang sedikit digunakan kurang dari yang saya temukan adalah memulainya dengan +Fsebagai argumen (atau memukul SHIFT+ Fsambil kurang). Ini menyebabkannya mengikuti file yang Anda buka, dengan cara yang sama tail -f <file>. Sangat berguna jika Anda menonton file log dari aplikasi, dan cenderung ingin membuat cadangan halaman (jika menghasilkan 100 dari garis logging setiap detik, misalnya).

sanmiguel
sumber
3
Mengikuti dengan lebih sedikit adalah SANGAT jauh lebih berguna daripada dengan ekor. Terutama log dengan banyak aksi.
Svish
6
@Svish Bisa dibilang lesslebih :)
Martin Konecny
6
@MartinKonecny lessmungkin lebih, tapi lessjangan morebiarkan sajamost
sanmiguel
@sanmiguel saya tidak tahu, mencobanya dan sidescroll benar-benar keren, terima kasih
ᐅ devrimbaris
Saya akan menggunakan less +F --follow-name some.file. +Fsendiri tidak bekerja untuk saya.
WesternGun
34

Add-on untuk apa yang dikatakan @Juha: Sebenarnya -imengaktifkan Case-insensitive dengan SmartCasing, yaitu jika pencarian Anda mengandung huruf besar, maka pencarian akan case-sensitive, jika tidak, itu akan case-sensitive. Anggap saja seperti :set smartcasedi Vim.

Misalnya: dengan -i, pencarian 'log' di 'Log, ..' akan cocok, sedangkan 'Log' in 'log, ..' tidak akan cocok.

Antony Thomas
sumber
17
Sebenarnya, jika ada huruf, bukan hanya huruf pertama, huruf besar, pencarian akan menjadi sensitif huruf. Perbedaan yang penting (dan bagaimana saya lebih suka seperti itu). Ini juga bagaimana smartcase vim bekerja.
Johannes Hoff
Di Vim Anda juga bisa mengatakan /\cloguntuk beralih ke pencarian case-insensitive.
Darko Veberic
12

Tampaknya Anda dapat memanggil fitur ini pada basis per pencarian seperti:

less prompt> /search string/-i

Opsi ini ada dalam lessbantuan interaktif yang Anda akses melalui h:

less prompt> h
...
  -i  ........  --ignore-case
                  Ignore case in searches that do not contain uppercase.
  -I  ........  --IGNORE-CASE
                  Ignore case in all searches.
...

Saya belum diperiksa secara ekstensif tetapi bantuan dalam lessversi 487 pada MacOS serta distro Linux lainnya mencantumkan opsi ini sebagai tersedia.

Di MacOS Anda juga dapat menginstal versi yang lebih baru lessvia brew:

$ brew install less
$ less --version
less 530 (POSIX regular expressions)
Copyright (C) 1984-2017  Mark Nudelman

Referensi

slm
sumber
@IlikeSerena - mungkin masalah dengan versi spesifik less.
slm
@slm di mana lessAnda mencoba ini? Jangan bekerja pada saya less 458 (GNU regular expressions)(kata bakat less 458-2FWIW)
hdl
@ Hdl - Saya tidak memiliki akses ke sistem saat ini tetapi pada versi apa pun lessyang termasuk w / Fedora 19/20.
slm
@slm Terima kasih, mungkin rilis yang lebih baru dari 458-2, seperti 458-6 karena yang khusus ini dibuat untuk Fedora pada 2014-02-10 menurut koji.fedoraproject.org/koji/packageinfo?packageID=759 dan karena Anda memposting ini pada 22 Feb '14 ...
hdl
Tidak bekerja di mac dengan kurang dari 487 (ekspresi reguler POSIX)
Sumit Jain
11

Saat menggunakan flag -i, pastikan untuk memasukkan string pencarian sepenuhnya dalam huruf kecil, karena jika huruf apa pun adalah huruf besar, maka itu sama persis.

Lihat juga: -I (modal i) bendera kurang (1) untuk mengubah perilaku ini.

joe
sumber