97 votes

La commande 'less' efface l'écran à la sortie - comment la désactiver ?

Comment forcer le less pour ne pas effacer l'écran à la sortie ?

J'aimerais qu'il se comporte comme git log commandement :

  • il laisse la page récemment vue à l'écran en quittant le système
  • il ne quitte pas le less même si le contenu tient sur un seul écran (essayez git log -1 )

Des idées ? Je n'ai pas trouvé de less ni d'options ni de variables env dans un manuel, je soupçonne qu'il est défini par une variable env cependant.

112voto

sherbang Points 2675

Pour éviter less pour ne pas effacer l'écran à la sortie, utilisez -X .

De la page de manuel :

-X ou --no-init

Désactive l'envoi de l'initialisation et de la désinitialisation de termcap au terminal. Ceci est parfois souhaitable si la désinitialisation fait quelque chose d'inutile, comme effacer l'écran. l'écran.

Quant à être moins excitant si le contenu tient sur un seul écran, c'est une option. -F :

-F ou --quit-if-one-screen

Permet à less de sortir automatiquement si le fichier entier peut être être affiché sur le premier écran.

-F n'est pas la valeur par défaut, donc elle est probablement prédéfinie quelque part pour vous. Vérifiez la var. env. LESS .

24voto

Derek Douville Points 241

Si vous souhaitez que l'une des options de la ligne de commande soit toujours utilisée par défaut, vous pouvez ajouter à votre fichier .profile ou .bashrc la variable d'environnement LESS. Par exemple :

export LESS="-XF"

appliquera toujours -X -F chaque fois que less est exécuté à partir de cette session de connexion.

Parfois, les commandes sont aliasées (même par défaut dans certaines distributions). Pour vérifier cela, tapez

alias

sans arguments pour voir si elle a été aliasée avec des options que vous ne voulez pas. Pour exécuter la commande réelle dans votre $PATH au lieu d'un alias, il suffit de la faire précéder d'un back-slash :

\less

Pour savoir si une variable d'environnement LESS est définie dans votre environnement et affecte le comportement :

echo $LESS

5voto

Lester Cheung Points 152

Ou simplement le définir dans votre configuration globale de git :

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

De cette façon, les autres outils ne sont pas affectés (ce qui me plaît).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X