Comment sauvegarder l'historique des shell plus facilement dans tcsh?


3

J'utilise assez souvent tcsh et pose plusieurs questions sur son histoire:

  • Existe-t-il un moyen de sauvegarder des commandes pour différents onglets de shell séparément?
  • Existe-t-il un moyen de sauvegarder les commandes par session (dans des cas comme celui-ci: ssh autre utilisateur @ autre ordinateur)?
  • Puis-je ajouter des dates à l'historique du shell? (Je sais que cela peut être fait en bash)

Ce m'a aidé à résoudre le problème des dates.
White Zebra

Réponses:


1

Il n’existe pas de méthode intégrée pour enregistrer l’enregistrement de l’historique des commandes séparément ou par session. Vous devrez définir votre variable 'histfile' pour chaque instance. Cela signifie que vous avez besoin de quelque chose d'unique dans votre environnement qui existe déjà lorsque votre fichier .tcshrc est généré, ou que vous vous ajoutez du code au sommet de votre .tcshrc qui trouve une valeur unique, peut-être à partir de la commande tty.

Veillez à ne le faire que lorsque vous êtes dans un shell interactif afin d'éviter tout ralentissement ou toute complication inutile des tâches générant de nouveaux shells tcsh inattendus. Par exemple, si vous utilisez vim et exécutez des commandes shell, la commande tty ne se comportera pas.

J'utilise habituellement la méthode prompt3 ...

if ( $?prompt3 ) then
    #
    # interactive-only things...
    #
endif

Pour une histoire séparée, vous pourriez peut-être vous en tirer avec quelque chose comme:

set mytty = ( `tty` )
set histfile = ( ".history.${mytty}" )
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.