Çıkışta 'daha az' komutu temizleme ekranı - nasıl kapatılır?


79

lessProgram çıkışta ekranı temizlememeye nasıl zorlanır?

git logEmir gibi davranmasını istiyorum :

  • çıktıktan sonra en son görülen sayfayı ekranda bırakıyor
  • lessiçerik bir ekrana sığsa bile çıkmaz (deneyin git log -1)

Herhangi bir fikir? lessBir el kitabında uygun seçenekler veya env değişkenleri bulamadım , ancak bazı env değişkenleriyle ayarlandığından şüpheleniyorum.


Muhtemelen daha az kaydırma özelliğine ihtiyacınız vardır, bu yüzden moreuygun olmaz mı?
Svend

Yanıtlar:


95

lessÇıkışta ekranın temizlenmesini önlemek için kullanın -X.

Manpage'den:

-X veya - no-init

Termcap başlatma ve yeniden başlatma dizelerinin terminale gönderilmesini devre dışı bırakır. Yeniden başlatma dizesi, ekranı temizlemek gibi gereksiz bir şey yaparsa, bu bazen istenir.

İçeriğin bir ekrana sığması durumunda daha az çıkma söz konusu olduğunda, bu seçenek -F:

-F veya - quit-if-one-screen

Tüm dosya ilk ekranda görüntülenebilirse, otomatik olarak daha az çıkmasına neden olur.

-Fvarsayılan değil, bu yüzden muhtemelen sizin için bir yerde önceden ayarlanmış. Env var LESS.


Mükemmel! -X aklımdaki şeydi.
Wojciech Kaczmarek

7
Bilmen, bu özellikle sinir bozucu -Fama -Xsıra daha sonra init ekran kısa dosyaları basitçe hiçbir belirgin nedeni, görünmez hale getirecek sıfırlar bir sisteme hareketli. ackAyarımı ACK_PAGER='less -RF'Mac’e almaya çalıştığımda bu beni ısırdı . Çok teşekkürler!
markpasc

@ markpasc: Buna dikkat çektiğiniz için teşekkürler. Bu kombinasyonun bu etkiye neden olacağının farkında değildim, ama şimdi açık.
sleske

7
Bu, özellikle erkek çağrı cihazı için kullanışlıdır, böylece 'q' tuşuyla daha az bıraktığınızda man sayfaları kaybolmaz. Diğer bir deyişle, bilgiyi kullanmak için daha az çağrı cihazı bıraktığınızda yalnızca ilgilenmeniz gereken bir adam sayfasındaki konuma ilerlersiniz. Böylece ekledim: export MANPAGER='less -s -X -F'.bashrc'ime, daha az istifa ettiğimde man sayfa bilgisini ekranda tutmak için, aslında onu ezberlemek yerine kullanmak için kullanabiliyorum.
Michael Goldshteyn

2
lessÇıkarken nasıl davranması gerektiğine karar vermeniz gerektiğine inanıyor .
Michael Burr

17

Komut satırı seçeneklerinden herhangi birinin her zaman varsayılan olmasını istiyorsanız, .profile veya .bashrc komutunu LESS ortam değişkenine ekleyebilirsiniz. Örneğin:

export LESS="-XF"

Bu oturum açma oturumundan daha az çalıştırıldığında daima -X -F'yi uygular.

Bazen komutlar takma isimlendirilir (bazı dağıtımlarda varsayılan olarak bile). Bunu kontrol etmek için yazın

alias

İstemediğiniz seçeneklerle takma ad olup olmadığını görmek için hiçbir argüman olmadan. Aktüel komutu bir takma ad yerine $ PATH'nizde çalıştırmak için, sadece bir eğik çizgi ile önizleyin:

\less

LESS ortam değişkeninin ortamınıza ayarlanıp ayarlanmadığını ve davranışınızı etkileyip etkilemediğini görmek için:

echo $LESS

2
Aslında, export LESS="-XFR"renklerin de gösterileceği şekilde ekliyorum less.
dotancohen

2
Bunun için teşekkürler! -XFkendi başına çıktısını kırarak oldu git diffve -XFRiki dünyanın en iyisi olur - hayır ekran temizleme, ancak renkli git diffçıktı.
Giles Thomas,

1

Ya da sadece global git config'inize yerleştirin:

git config --global core.pager 'less -FX'

Bu şekilde diğer aletler etkilenmez (ki bundan hoşlanırım).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.