Comment enregistrer toutes les entrées et sorties dans une session de terminal?

37

Comment conserver les journaux de tout le travail effectué via le terminal? Par exemple, je veux un enregistrement de tout le travail effectué sur la base de données via le terminal.

    
posée Ankit 10.07.2012 - 12:58
la source

3 réponses

49

Lorsque vous êtes prêt à enregistrer un fichier journal, tapez:

script screen.log

Maintenant, jusqu'à ce que vous arrêtiez le script, toutes les entrées et sorties du terminal seront stockées dans screen.log. Lorsque vous avez terminé, tapez simplement:

exit

Votre fichier screen.log sera stocké dans le répertoire local. Si vous souhaitez le rediriger, utilisez un chemin d'accès absolu tel que ~/screen.log . Cela fera exactement ce que vous recherchez.

Source: Guide Ubuntu - Comment se connecter Commandes de terminal

    
réponse donnée xlukasx 10.07.2012 - 13:21
la source
8

Vous pouvez essayer Asciinema . En plus de faire un enregistrement, vous avez la possibilité de le partager et d’intégrer le lecteur à votre blog, à votre article ou à une conférence.

    
réponse donnée sickill 15.11.2013 - 17:04
la source
6

J'ai un meilleur moyen d’utiliser syslog pour enregistrer toutes les commandes shell, cela peut varier selon la distribution Linux, mais la méthode restera la même

Vous devez suivre certaines étapes:

Étape n ° 1 (service Create Syslog)

# vim /etc/rsyslog.d/bash.conf

local6.*    /var/log/commands.log

Étape 2 (Ouvrez bashrc et entrez la commande ci-dessous)

# vim /root/.bashrc

# Enable CLI Logging by Mansur 08-12-2016 
whoami="$(whoami)@$(echo $SSH_CONNECTION | awk '{print }')"export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$whoami [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

Ste # 3 (Redémarrer le service Syslog)

# /etc/init.d/rsyslog

Voici un exemple de journal:

Dec  7 22:13:00 validationdb2 mahasan: [email protected] [13291]: tail -f /var/log/mysql/mysql.log [0]
Dec  7 22:13:09 validationdb2 mahasan: [email protected] [13291]: ls -lh [0]
Dec  7 22:13:27 validationdb2 mahasan: [email protected] [13291]: touch test command  [0]
    
réponse donnée Mansur Ali 08.12.2016 - 08:17
la source

Lire d'autres questions sur les étiquettes