Table des matières
- 2026:
- 2025:
4 billet(s) pour juillet 2026
| Procédure simple augmentation de la SWAP | 2026/07/17 15:49 | Jean-Baptiste |
| Exemple git clone avec Ansible | 2026/07/16 14:47 | Jean-Baptiste |
| Windows exe - Comparaison de fichiers binaires | 2026/07/16 10:25 | Jean-Baptiste |
| Pb git | 2026/07/01 17:36 | Jean-Baptiste |
Tous logger et historiser vos commandes bash grace à la commande "script"
Voir aussi :
- netconsole
Conserver un historique en local de tout ce qui est affiché dans vos shells (entrée/sortie) C'est également valable pour les connexions distantes via SSH. NB : Les mots de passes SSH ne serons pas enregistré (car pas affichés à l'écran)
Il suffit d'ajouter dans le .bashrc
~/.bashrc
##### EXTREM LOGING / HISTORIZE #### historyFolder="$HOME" historyFilename=".history_$(date '+%Y-%m-%d-%H-%M').$$.txt" historyFilenameTime=".history_$(date '+%Y-%m-%d-%H-%M').$$.time" #parentProcessNameOfCurrentShell=$(ps --no-headers -o comm -p $(ps --no-headers -o ppid -p $$)) parentProcessNameOfCurrentShell=$(ps --no-headers -o comm -p $PPID) if [ "$parentProcessNameOfCurrentShell" != script ] then script -aqf ${historyFolder}/${historyFilename} -t 2> ${historyFolder}/${historyFilenameTime} fi
Vous pouvez voir Les caractères de contrôle, le mouvement du curseur, couleurs, etc… seront également enregistrés ce qui “pollue” le fichier. Voici un exemple de comment le nettoyer en cas de besoin :
cat $NOMDUFICHIER |sed -e 's/[[:cntrl:]]//g' -e 's/\[[^m]*m//g' -e 's/\^*M//g' >$NOUVEAUFICHIER
Pour arrêter l'historisation du shell courant, utiliser la commande :
exit
A utiliser une seul fois. Sinon vous fermerez votre shell.
Pour reprendre l'historisation, après un “exit” il suffit de sourcer votre .bashrc
source ~/.bashrc
Rejouer l'historique, exemple :
scriptreplay -t .history_2014-10-14-16-57.7649.time .history_2014-10-14-16-57.7649.txt
Il est possible de jeter un œil rapide sur le fichier avec cat, more ou less
cat .history_2014-10-14-16-57.7649.txt less -r .history_2014-10-14-16-57.7649.txt more .history_2014-10-14-16-57.7649.txt
Autre façon avec rsyslog
/etc/rsyslog.d/bash.conf
local6.* /var/log/commands.log
/etc/bash.bashrc
# bash history logger export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
systemctl restart rsyslog
Autre
De pas dupliquer les ligne dans l'historique
export HISTCONTROL=ignoredups
Afficher les date & heure dans l'history (hardening)
export HISTTIMEFORMAT="[ %d/%m/%Y %H:%M:%S ]"
Avec SystemD
# journalctl -t sudo -p 5 -u session-*.scope -b Sep 12 08:19:01 vmdeb01 sudo[601]: admin : TTY=pts/0 ; PWD=/root ; USER=root ; COMMAND=/bin/bash
Torréfier une application grâce à Tsocks
Torréfier : Passer par le réseaux Tor (pour cacher son IP) Voir https://trac.torproject.org/projects/tor/wiki/doc/TorifyHOWTO
Tor doit être correctement configuré et lancé
/etc/tsocks.conf
server = 127.0.0.1 server_port = 9050 tordns_enable = true local = 127.0.0.0/255.128.0.0 local = 127.128.0.0/255.192.0.0 local = 192.0.0.0/255.0.0.0
tsocks w3m http://mire.ipadsl.net
Ne marche pas pour toutes les applications, dépend des APIs utilisées !
Lister la table des process dans un fichier txt avec top
top -n 1 -b > /tmp/processtable.txt top -b -n 1 -o '%CPU' | sed 1,7d getCpu="$(top -b -n2 -d10 | awk '/PID USER/ {getline;printf "Process: %s, cpu: %s %\n",$12,$9}' | tail -1)" typeset -i cpu="$(echo $getCpu | awk -F"," '{print $2}'| awk -F":" '{print $2}' | awk '{print $1}')"
Équivalent à GNU screen / tmux pour X
Voir aussi :
- xmove
- winswitch
xpra
xpra --no-pulseaudio --no-clipboard --compress=9 attach ssh:tribler@kimi:2222:100
- 2222 : port TCP pour SSH
- 100 : Identifiant pour xpra
Python paradigmes
Voir :
Python 4 algo différent pour faire des factorielle
Autres
- Impératif
- Déclaratif
- Fonctionel
- Logique
- prolog
- kanren & sympy
- https://fr.wikipedia.org/wiki/Clips_(langage)
- Dataflow programming
