Je voulais savoir si, par défaut, tout ce que vous entrez dans le terminal est enregistré quelque part dans votre système. Je peux l'imaginer dans une certaine mesure parce que vous pouvez utiliser les flèches haut et bas pour callbacker les commands saisies, mais agit de la même façon que la RAM fonctionne sur un ordinateur, où les commands sont perdues / supprimées? Ou y a-t-il quelqu'un dans l'ordinateur qui les garde encore?
court: non
long: Cela dépend:
De plus, même avec des shells, il n'est pas courant d'avoir plusieurs instances de shells en cours d'exécution et d'save toutes les commands de ces instances.
En plus de shell-history, il existe d'autres moyens d'save vos commands, par exemple en utilisant des programmes d'audit de bas niveau (qui enregistrent les ressources utilisées par vos commands) ou des script
text seul (qui peuvent save toutes les informations envoyées depuis l'ordinateur au terminal).
Même si votre shell n'est pas configuré pour save des commands, vous pouvez travailler dans un environnement où l'audit est configuré. Pour ceux "par défaut", il y a un logging.
Pour en savoir plus:
Cela dépend de la coquille que vous utilisez. Si vous n'utilisez pas Windows et que vous utilisez le shell par défaut de votre système, vous utilisez probablement le shell Bash.
Le shell Bash stocke une list de la plupart des commands que vous avez saisies dans un file défini par la variable d'environnement HISTFILE
. Par défaut, il s'agit de ~/.histfile
. En changeant HISTFILE
en quelque chose d'autre, vous pouvez stocker l'historique ailleurs. /dev/null
est populaire pour ceux qui veulent cacher leur histoire. Bash stocke également votre historique dans la RAM, c'est pourquoi vous pouvez toujours utiliser les touches fléchées haut et bas, même lorsque vous définissez HISTFILE
sur /dev/null
.
Maintenant, vous remarquerez que j'ai dit la plupart des commands que vous avez saisies. Les commands préfacées avec un espace n'apparaissent pas dans votre historique.