Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/08/2021, à 00:20

arnoxz

Affichage long de history, en savoir plus sur l'historique

Bonjour,

Mon historique ne m'affiche que les 1000 dernières lignes, cependant elles sont numérotées de 2721 à 3720.... mon HISTSIZE est paramétré sur 1000 et mon HISTFILESIZE sur 4000 ;
est-ce que les 2720 précédentes restent consultables et il ne m'affiche que 1000 dernières ?
Si non, est que si je paramètre HISTSIZE sur 4000, je vais un moment ajouter les nouvelles jusqu'à 4000 affichable....

Finalement, quel est l'avantage de HISTFILESIZE si cela ne peut que contenir uniquement les 1000 du paramètre de HISTSIZE ?

Je trouve que la doc du site est assez succincte sur le sujet : https://doc.ubuntu-fr.org/terminal#l_hi … _commandes

Où puis-je également trouver plus d'info, pas que sur le paramétrage mais également sur l'utilisation fine de "history" ? J'ai trouvé ceci qui complète un peu les manips de la commande : https://debian-facile.org/doc:programma … sh:history

Voici le paramétrage actuel de mon .bashrc

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=4000

Hors ligne

#2 Le 11/08/2021, à 00:51

Watael

Re : Affichage long de history, en savoir plus sur l'historique

salut,

history se souvient de HISTSIZE commandes, et les écrit dans HISTFILE, qui ne peut pas contenir plus que HISTFILESIZE commandes*.
de la même manière, history n'affiche pas plus que HISTSIZE commandes (les dernières commandes).
la totalité des HISTFILESIZE commandes sont toujours lisibles dans HISTFILE.

je ne suis pas certain d'expliquer clairement.

--
* quand la commande history écrit dans HISTFILE elle supprime les premières lignes pour ne conserver que HISTFILESIZE commandes.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 11/08/2021, à 09:53

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

En effet, c'est encore plus compliqué maintenant (??)

si je configure comme ceci cela fonctionnera j'imagine ? :
HISTSIZE=4000
HISTFILESIZE=4000

Quel est ce nouveau paramètre HISTFILE, il ne se trouve pas dans le batch ?

Dernière modification par arnoxz (Le 11/08/2021, à 09:53)

Hors ligne

#4 Le 11/08/2021, à 10:25

MicP

Re : Affichage long de history, en savoir plus sur l'historique

Bonjour

arnoxz a écrit :

…Quel est ce nouveau paramètre HISTFILE…

Il y a une description des Variables de l'interpréteur bash utilisées par la commande history
dans le manuel de l'interpréteur bash :

man bash

Si tu as du mal à les trouver,
entre la ligne de commandes suivante :

man --pager='less -p "Variables de l"' bash

ou bien :

man --pager='less -p "HISTF"' bash

=======
Voir aussi :

man --pager='less -p "^HISTORIQUE$"' bash

Dernière modification par MicP (Le 11/08/2021, à 10:41)

Hors ligne

#5 Le 11/08/2021, à 10:42

pingouinux

Re : Affichage long de history, en savoir plus sur l'historique

Bonjour,

arnoxz #3 a écrit :

Quel est ce nouveau paramètre HISTFILE, il ne se trouve pas dans le batch ?

Peut contenir le nom du fichier historique.
Extrait de help history

if HISTFILE has a value, that is used, else ~/.bash_history.

Hors ligne

#6 Le 11/08/2021, à 13:58

Watael

Re : Affichage long de history, en savoir plus sur l'historique

arnoxz a écrit :

Quel est ce nouveau paramètre HISTFILE, il ne se trouve pas dans le batch ?

HIST + FILE, hmmm...
mais qu'est-ce que ça pourrait bien être ?

Dernière modification par Watael (Le 11/08/2021, à 16:23)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#7 Le 11/08/2021, à 15:35

bruno

Re : Affichage long de history, en savoir plus sur l'historique

Bonjour,

Exemple sur mon poste de travail :

HISTSIZE=1000
HISTFILESIZE=2000

La commande history retourne les 1000 derniers résultat conformément à HISTSIZE :

$ history | wc -l
1000

Le fichier .bash_history contient les 2000 dernières commandes conformément à HISTFILESIZE :

$ wc -l .bash_history 
2000 .bash_history

Hors ligne

#8 Le 11/08/2021, à 19:54

Tawal

Re : Affichage long de history, en savoir plus sur l'historique

Watael a écrit :

HIST + FILE, hmmm...
mais qu'est-ce que ça pourrait bien être ?

Heu ... c'est l'histoire d'un fichier ... lol Propos déplacé et mal venu sad

Dernière modification par Tawal (Le 19/08/2021, à 10:34)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#9 Le 12/08/2021, à 20:07

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

MicP a écrit :

Bonjour
Il y a une description des Variables de l'interpréteur bash utilisées par la commande history
dans le manuel de l'interpréteur bash :

man bash

Merci je vais aller lire cela avec attention

Hors ligne

#10 Le 12/08/2021, à 20:12

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

Watael a écrit :
arnoxz a écrit :

Quel est ce nouveau paramètre HISTFILE, il ne se trouve pas dans le batch ?

HIST + FILE, hmmm...
mais qu'est-ce que ça pourrait bien être ?


Mouais bien sur,.... enfin bon c'est un peu comme si je te dis que le Bortshc contient de la betterave (ce que tu pourras peut-être définir de cette recette), mais tu saras loin de pouvoir me dire quels sont les autres ingrédients et comment préparer cette soupe, c'est un peu la même chose, sauf qu'ici, cela inclus un paramètre encore supplémentaire alors que cela semble évident que 4000 (ou 2000) devrait contenir hé bien, hum,... 4000 (ou 2000) ce qui n'est pas le cas d'évidence !!

Merci de faire avancer le scmilblick si possible.... ben que je pense que ce ne soit pas trop compliqué, mais j'aurais voulu, plutôt que d'avoir une approche empirique de test à petit pas, avoir une réponse cohérente à ces nombreuses options (intéressantes peut-être ou complètement perturbatrice d'une logique que je pensais tout de même avoir apprivoisée depuis 1998 et qui e semble pas encore être le cas)....

Hors ligne

#11 Le 12/08/2021, à 20:18

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

bruno a écrit :

Bonjour,

Exemple sur mon poste de travail :

HISTSIZE=1000
HISTFILESIZE=2000

La commande history retourne les 1000 derniers résultat conformément à HISTSIZE :

$ history | wc -l
1000

Le fichier .bash_history contient les 2000 dernières commandes conformément à HISTFILESIZE :

$ wc -l .bash_history 
2000 .bash_history

Cela semble donc dire que dans ma config, je possède toujours une trace (quelques part et comment le consulter / sauver) des 4000 dernières commandes mais lors de l'appel de la commande, seules les 1000 dernières sont affichées ?? Comment appeler les précédentes ? peut-être si je reparamètre HISTSIZE sur 4000, les (jusqu'à) 4000 commandes de HISTFILESIZE seront toujours consultables !? (ou peut-être que ce n'est pas la philosophie ?)

Hors ligne

#12 Le 12/08/2021, à 20:20

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

en tout cas, quel est votre config préférée pour garder un historique de qualité (je fais pas mal de commande et parfois, je ne ma rappelle plus exactement de certaines que je veux rappeler, mais 1000 n'est pas tellement énorme... parfois j'envoie l'historique dans un fichier de sauvegarde, mais ce sont alors des manips en plus, le mieux (mais qui prend du temps) est de constituer un petit document séparer (style doc) avec les commandes les plus utiles + description, mais cela consomme du temps à l'édition.....cependant bien pratique lorsque c'est utile....

Hors ligne

#13 Le 12/08/2021, à 23:10

Tawal

Re : Affichage long de history, en savoir plus sur l'historique

Hello,

Désolé pour la rigolade sad

Personnellement, je ne me sers que très peu de l'historique de bash. Juste pour rappeler des commandes récentes.

Pour ce qui est des commandes "importantes/utiles", je les notes dans un fichier texte avec un descriptif le plus exact possible de leur actions.
Bon j'avoue qu'avec le temps, c'est un peu le bazar pour retrouver celle que je recherche. Et bien souvent une lecture du man + une recherche sur le web me permettent d'avoir le résultat escompté.


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#14 Le 12/08/2021, à 23:47

kamaris

Re : Affichage long de history, en savoir plus sur l'historique

arnoxz a écrit :

Cela semble donc dire que dans ma config, je possède toujours une trace (quelques part et comment le consulter / sauver) des 4000 dernières commandes

Pour consulter :

cat "$HISTFILE"

Pour sauvegarder :

cp "$HISTFILE" /chemin/de/sauvegarde
arnoxz a écrit :

peut-être si je reparamètre HISTSIZE sur 4000, les (jusqu'à) 4000 commandes de HISTFILESIZE seront toujours consultables !?

Oui.

arnoxz a écrit :

en tout cas, quel est votre config préférée pour garder un historique de qualité

Pas de limite de taille (HISTSIZE=-1 HISTFILESIZE=-1), élimination des doublons à la volée (HISTCONTROL=erasedups), une commande de nettoyage plus en profondeur du fichier d'historique dans le .bashrc, et une sauvegarde quotidienne de ce fichier, auquel je tiens beaucoup smile
Je mets aussi stty -ixon dans le .bashrc pour que la redescente dans l'historique par Ctrl+S (inverse de Ctrl+R) fonctionne correctement.

Dernière modification par kamaris (Le 12/08/2021, à 23:52)

Hors ligne

#15 Le 13/08/2021, à 04:57

MicP

Re : Affichage long de history, en savoir plus sur l'historique

Bonjour

Depuis 2015 je garde une trace de toutes les lignes de commandes que j'ai entrées.

La date/heure de lancement de chaque ligne de commande(s) est enregistrée.

Le fichier historique est commun (et mis à jour en "temps réèl") à tous les terminaux qui seront ouverts.

J'ai créé une fonction que j'ai nommée hg (history grep)
qui me permet de faire s'afficher toutes les lignes de tous les fichiers historiques qui contiendraient un motif.

=======
EDIT : Ajout de liens web dans les commentaires du script.

Je fais sourcer par mon ~/.bashrc un fichier que j'ai nommé  ~/.bash_logHistory
et dont le contenu est :

# Lignes de commande(s) bash pour log des fichiers ~/.bash_history
#  À faire sourcer par ~/.bashrc

#  Voir aussi :
#   http://askubuntu.com/questions/67283/is-it-possible-to-make-writing-to-bash-history-immediate
#   http://unix.stackexchange.com/questions/1288/preserve-bash-history-in-multiple-terminal-windows
#   https://unix.stackexchange.com/questions/18212/bash-history-ignoredups-and-erasedups-setting-conflict-with-common-history
#   https://www.digitalocean.com/community/tutorials/how-to-use-bash-history-commands-and-expansions-on-a-linux-vps

#  ~/.bash_history commun à tous les terminaux.
PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND" # À chaque fois que le prompt sera affiché : -a append; -c clear; -r read

shopt -s histappend histverify # append to history, don't overwrite it + Allow to review a history substitution result by loading the resulting line into the editing buffer, rather than directly executing it.
HISTSIZE=4000                  # The number of commands to remember in the command history. The default value is 500.
HISTFILESIZE=2000              # The maximum number of lines contained in the history file.
HISTCONTROL=ignoreboth         # ignoreboth <=> Pas de doublons consécutifs et ignore les lignes dont le premier caractère est un caractère espace.
HISTTIMEFORMAT='%d/%m/%Y %T '  # Format d'affichage date/heure des lignes de commande(s) enregistrées.

rep="~/.logsBashHistory"                           # Nom du répertoire dans lequel seront sauvegardés les fichiers ~/.bash_history archivés.
backupPrefix="$rep/bash_hist_${USER}_${HOSTNAME}"  # Préfixe du nom du nouveau fichier log à créer.
backupLog="${backupPrefix}.$(date +%Y%m)"          # Nom du nouveau fichier log à créer en fonction de la date courante.
keep=200                                           # Garder les 200 dernières lignes de commandes dans ~/.bash_history après archivage.

[ -d "$rep" ] || mkdir "$rep"             # Si inexistant, créer le répertoire qui va contenir les fichiers ~/.bash_history archivés.
[ -f "$backupLog" ] || {                  # Si le fichier backup à créer n'existe PAS encore dans le répertoire perso des logs archivés <=> un par mois vu que la date est intégrée dans le nom du fichier.
    mv -f "$HISTFILE" "$backupLog"           # Déplacer en renommant ~/.bash_history dans le répertoire ~/.logsBashHistory/
    tail -n$keep "$backupLog" > "$HISTFILE"  # Créer un nouveau fichier ~/.bash_history en y copiant les 200 dernières lignes de l'ancien ~/.bash_history
    history -r                               # Actualiser le tampon mémoire de la commande history avec le contenu du nouveau fichier ~/.bash_history
}

# Fonction de recherche de motif
#   autant dans le fichier ~/.bash_history en cours,
#   que dans les fichiers archivés dans le répertoire ~/.logsBashHistory
#

### TOUDOUX :
#     - Revoir la ligne de commande awk pour se passer du grep final.
#     - Tester la présence de gawk
#        [ $(basename $(readlink --canonicalize $(which awk))) == gawk ] && exit

hg ()
{
    # ATTENTION : Cette fonction de recherche utilise gawk

    msg="\n\tDescription\t: hg est un raccourci pour 'history | grep motifRecherché'\n\n"
    msg+="\tSyntaxe\t\t: hg motif_recherché\n\n"
    msg+="\tLa recherche sera aussi effectuée dans les fichiers history archivés.\n\n"

    case $@ in
        ?|/?|-?|-h|--help|'')
            printf "$msg"
            ;;
        *)
            awk -v timeFormat="$HISTTIMEFORMAT" '{ if($0 ~/^#[[:digit:]]{10}$/) printf strftime(" arch. "timeFormat, substr($0,2,10)); else print $0; }' "${backupPrefix}".* | grep "$1"
            history | grep "$1"
            ;;
    esac
}

=======
REMARQUE :
Ma fonction de recherche utilise gawk et ne fonctionne pas avec awk
mais même si elle fonctionne correctement avec gawk + grep
elle aurait bien besoin d'être revue et corrigée (depuis 2015 elle est restée dans mes TOUDOUX)

=======
Voilà ce que ça donne :

michel@debbull:~$ hg

  Description	: hg est un raccourci pour 'history | grep motifRecherché'

  Syntaxe	: hg motif_recherché

  La recherche sera aussi effectuée dans les fichiers history archivés.

michel@debbull:~$ 

Et un retour (que j'ai tronqué parce que trop long) d'une recherche :

michel@debbull:~$ hg fdisk
 arch. 25/12/2015 01:22:38 man fdisk
 arch. 26/12/2015 22:36:39 fdisk -l
 arch. 23/01/2016 09:49:05 fdisk -l /home/michel/virtMachines/ISOsFr/debian-live-8.2.0-amd64-cinnamon-desktop.iso
 arch. 29/01/2016 02:59:27 fdisk aaeeff.data
…
…
 arch. 24/06/2021 06:50:23 sudo fdisk /dev/sda
 arch. 24/06/2021 06:54:54 /usr/sbin/fdisk /dev/loop0
  241  05/08/2021 14:42:31 /usr/sbin/fdisk -l Téléchargements/ISOsInstall/ubuntu-20.04.2.0-desktop-amd64.iso
  243  05/08/2021 14:43:51 /usr/sbin/fdisk -l ubuntu-20.04.2.0-desktop-amd64.iso
  245  05/08/2021 14:45:29 /usr/sbin/fdisk -l debian-10.10.0-amd64-netinst.iso
  854  13/08/2021 04:48:18 hg fdisk
michel@debbull:~$ hg

Dans ce retour, le motif de recherche (fdisk) est affiché en rouge
les lignes qui commencent par arch. sont extraites des fichiers historique archivés.

=======
EDIT :

Quand je suis sur une machine dont le nom (HOSTNAME) est différent,
j'ai parfois envie d'utiliser mes anciens fichiers archive bash_hist_*
Alors, je renomme mes fichiers bash_hist_* en adaptant le nom de machine :

ancienNom="debbull"; nouveauNom="$HOSTNAME"
for f in ~/.logsBashHistory/bash_hist_*; do mv $f ${f/_$ancienNom/_$nouveauNom}; done

Dernière modification par MicP (Le 18/08/2021, à 20:23)

Hors ligne

#16 Le 13/08/2021, à 09:26

Tawal

Re : Affichage long de history, en savoir plus sur l'historique

Subjugué ! (pour ne pas dire : sur le c*l)

C'est très pertinent MicP !
Et ça me donne l'envie de te copier. Je pense que tu l'accepteras puisque tu le partages ici.

Et du coup, je comprends mieux l'avantage de commencer une ligne de commande par un espace : pas d'enregistrement de cette commande dans l'historique !

Merci @arnoxz d'avoir soulevé le problème.
Merci @MicP pour une méthode très pertinente.


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#17 Le 13/08/2021, à 10:26

bruno

Re : Affichage long de history, en savoir plus sur l'historique

Quelques trucs utiles :
- ignorer certaines commandes dans l'historique avec HISTIGNORE, exemple :

HISTIGNORE=ls:cd::pwd:exit:date:* --help

- avoir la date et l'heure dans le retour de la commande history, exemple :

HISTTIMEFORMAT='%d/%m/%y %T '

- naviguer dans l'historique avec les fléches haut et bas (ou Ctrl+P, Ctril+N) ;
- rechercher dans l'historique avec Ctrl+R puis le début de la commande recherchée, ou avec grep :

grep machin .bash_history

- désactiver l'historique (-o pour réactiver) :

set +o history

etc.

Hors ligne

#18 Le 19/08/2021, à 01:03

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

Tawal : no soucis smile
kamaris : ok je comprends mieux, j'avais un peu le feeling, merci pour la confirmation
MicP : :-O subjugué aussi, je vais m'offrir un peu de temps afin de m'y consacrer sérieusement j'espère très prochainement, c'est exactement ce qui devrait me convenir, actuellement, je sauvais régulièrement mes history dans des fichiers textes, je vais même pouvoir les récupérer du coup, avec un peu d'organisation de mon côté !
bruno : top ! :-)

Hors ligne

#19 Le 19/08/2021, à 05:47

MicP

Re : Affichage long de history, en savoir plus sur l'historique

J'utilise aussi dans ce script l'option histverify
qui me permet de rappeler les lignes de commande(s) du fichier ~/.bash_history par leur numéro d'enregistrement
mais sans les lancer directement : Les lignes de commande(s) s'affichent en attendant que je lance leur exécution en appuyant sur la touche Entrée.

Toutes les lignes de commande(s) retournées qui commencent par un numéro
peuvent êtres rappelées en entrant un point d'exclamation suivit du numéro qui précède la ligne,
et grâce à l'option histverify je peux modifier la ligne de commande(s) affichée avant de lancer son exécution.

Par exemple, dans le retour suivant :

michel@debbull:~$ hg xkbprint
 arch. 28/10/2016 18:33:00 evince xkbprint_output.ps
 arch. 28/10/2016 18:34:01 evince xkbprint_output.ps
  189  16/08/2021 08:13:29 xkbprint -label name $DISPLAY - | gv -orientation=seascape - 
  191  16/08/2021 08:14:23 xkbprint -label name $DISPLAY - | gv -orientation=seascape - 
  397  19/08/2021 05:31:00 hg xkbprint
michel@debbull:~$ 

Je peux rappeler la ligne qui est numérotée 191 en entrant un point d'exclamation suivit du numéro,
ce qui fait juste s'afficher la ligne de commande(s)
et me permet de la modifier avant de la lancer :

michel@debbull:~$ !191
michel@debbull:~$ xkbprint -label name $DISPLAY - | gv -orientation=seascape - 

Donc, une fois la ligne affichée, j’appuie 5 fois sur le raccourci clavier Ctrl+Flèche Gauche,
et je peux, par exemple, remplacer name par code

michel@debbull:~$ xkbprint -label code $DISPLAY - | gv -orientation=seascape - 

ensuite, je n'ai plus qu'à appuyer sur la touche Entrée pour lancer l'exécution de la ligne de commande(s) modifiée.

=======
Sans l'option histverify la ligne de commande(s) rappelée aurait été directement lancée.

Voir la page man de l'interpréteur de commandes bash :

man --pager='less -p "histverify$"' bash

Dernière modification par MicP (Le 19/08/2021, à 06:08)

Hors ligne

#20 Le 19/08/2021, à 10:19

Tawal

Re : Affichage long de history, en savoir plus sur l'historique

MicP a écrit :

Sans l'option histverify la ligne de commande(s) rappelée aurait été directement lancée

Pas si sûr !
Si je fais Ctrl+r, tape le début de la commande recherchée, une fois atteinte celle voulue, je tape sur Flèche Droite et la commande s'affiche sans être lancée.

Edit:
Fonctionne aussi en appuyant sur Flèche Gauche

Dernière modification par Tawal (Le 19/08/2021, à 10:25)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#21 Le 19/08/2021, à 11:58

MicP

Re : Affichage long de history, en savoir plus sur l'historique

Tawal a écrit :
MicP a écrit :

Sans l'option histverify la ligne de commande(s) rappelée aurait été directement lancée

Pas si sûr !

Je parlais des lignes de commande(s) qui seraient rappelées
en tapant un point d'exclamation suivit du numéro d'enregistrement de la ligne de commande(s) dans le retour de la commande history

Dernière modification par MicP (Le 19/08/2021, à 12:20)

Hors ligne

#22 Le 19/08/2021, à 12:08

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

Pratiques ces manips, Merci encore :-)

Hors ligne

#23 Le 19/08/2021, à 12:43

MicP

Re : Affichage long de history, en savoir plus sur l'historique

Quelques raccourcis utilisables en mode Édition de ligne de commandes :

Flèche Gauche ou Droite => déplacement du curseur d'un caractère vers la Gauche ou la Droite
End (ou Fin) => Positionnement du curseur en fin de la ligne de commande
Home (ou Début) => Curseur au début de la ligne de commande
Ctrl+Flèche Gauche ou Droite <=> Mot précédent Mot suivant
Ctrl+K => suppression de tout ce qui est situé après le curseur
Ctrl+U => suppression de tout ce qui est situé avant le curseur
Ctrl+L => nettoyage de l'écran, la ligne de commande en cours d'édition et le prompt remontent en haut de l'écran
Ctrl+D => Si il n'y a aucun caractère sur la ligne de commande, c'est comme si vous entriez la commande exit => Fermeture du shell => Fermeture de la fenêtre du terminal
Esc (ou Échap) suivit de U => mise en majuscule de toutes les lettres du mot qui sont situées après le curseur (pour s'en souvenir, le U <=> Uppercase)
Esc (ou Échap) suivit de L => mise en minuscule de toutes les lettres du mot qui sont situées après le curseur (pour s'en souvenir, le L minuscule <=> Lowercase)

Il y a beaucoup d'autres raccourcis,
mais ça dépends aussi de la configuration de votre terminal, du shell utilisé, (et de beaucoup d'autres choses encore)

=======
Voir aussi le retour de :

bind -p | sort

=======
Il y a aussi une autre chose peut connue et pourtant très intéressante,
c'est l'auto-complétion des noms de variables :

Je créé une variable, mais ce nom de variable est très long (et donc pénible) à entrer :

michel@debbull:~$ maVarQuiAunNomTresLong="quelque chose à mettre dans ma variable"

maintenant, je veux utiliser ce nom de variable dans une ligne de commande,
mais moi, je suis un gros fainéant, alors je n'en tape que le début :

michel@debbull:~$ echo $maV

et ensuite, je n'ai plus qu'à taper sur la touche Échap puis appuyer sur la touche $
et l'autocomplétion se charge d'entrer pour moi le reste du nom de la variable :

michel@debbull:~$ echo $maVarQuiAunNomTresLong

=======
Expansion des caractères glob dans la ligne de commande(s) :
Entrez :

michel@debbull:~$ ls ~/.bash*

Tapez : Ctrl+X puis sur la touche *
et vous voyez votre ligne de commande se transformer automatiquement en :

michel@debbull:~$ ls /home/michel/.bash_history /home/michel/.bash_logout /home/michel/.bashrc 

=======
Complétion automatique dans la ligne de commande(s) :
Entrez :

michel@debbull:~$ ls ~/.bash

tapez Échap puis sur la touche *
et vous voyez votre ligne de commande se transformer automatiquement en :

michel@debbull:~$ ls ~/.bash_history ~/.bash_logout ~/.bashrc 

Dernière modification par MicP (Le 19/08/2021, à 21:34)

Hors ligne

#24 Le 19/08/2021, à 13:40

arnoxz

Re : Affichage long de history, en savoir plus sur l'historique

Top :-)
je ris, car, au bureau, j'ai également beaucoup bossé certains domaines pour pouvoir être fainéant :-)

Hors ligne

#25 Le 19/08/2021, à 15:17

MicP

Re : Affichage long de history, en savoir plus sur l'historique

C'est fou tout le temps que les autres croient qu'on perd,
alors qu'en fait on cherche seulement la meilleure méthode pour n'avoir à en faire que le minimum.

Et oui, apparemment, ça prends du temps,
mais quand on fini par trouver la bonne méthode et que ça fonctionne impec, c'est … cool

Hors ligne