Où est enregistré l'historique bash de l'utilisateur root?

25

Je ne parle pas .bash_historyde mon répertoire personnel. Je préfère généralement utiliser sudo -iou sudo supuis exécuter des commandes en tant qu'utilisateur root.

Étant donné qu'après ces commandes, l'historique n'est pas enregistré dans le .bash_historyfichier de mon répertoire personnel, je veux savoir si cet historique est enregistré quelque part ou non et si oui, où?

Devesh Khandelwal
la source
Je le sais mais je voulais connaître les commandes à l'intérieur du shell racine et j'ai trouvé ma réponse.
Devesh Khandelwal
Je le savais mais merci encore.
Devesh Khandelwal

Réponses:

32

Eh bien, lorsque vous êtes connecté en tant que root, l'historique bash est enregistré dans un /root/.bash_historyfichier, où se /roottrouve le répertoire de base par défaut pour l'utilisateur root. Pour le prouver, exécutez la commande suivante lorsque vous êtes connecté en tant que root:

echo $HISTFILE

La $HISTFILEvariable pointe vers le fichier qui contient votre historique.

La source: $HISTFILE

Généralement, lorsque vous vous connectez à un autre compte utilisateur, l'historique bash sera enregistré dans un fichier appelé .bash_historysitué dans le répertoire personnel de cet utilisateur.

De plus, si vous souhaitez enregistrer l'historique de bash pour l'utilisateur root dans un autre fichier, disons dans un .bash_historyfichier de mon répertoire personnel, vous devez modifier le /root/.bashrcfichier et ajouter une nouvelle ligne à la fin du fichier avec le contenu suivant:

HISTFILE="/home/username/.bash_history"       #change username with your user name
Radu Rădeanu
la source
1

J'ai l'habitude d'utiliser la liste de raccourcis via la touche haut du clavier qui affiche la dernière commande utilisée pour cet utilisateur. Si vous vous connectez en tant que root, vous verrez l'historique de l'utilisateur root.

Testez-le comme ceci, sudo -isaisissez le mot de passe, puis appuyez sur la touche haut du clavier. Vous allez maintenant faire défiler les dernières commandes utilisées dans l'ordre du plus récent au plus ancien.

Je sais que la réponse de Radu Rădeanu est ce que vous vouliez. Mais cela résout également le problème actuel. Ma solution est plus un moyen pratique de se souvenir d'une ancienne commande qui peut gagner du temps et de l'agitation.

Alvar
la source
Je connais la touche haut et l'utilise beaucoup. Ce que je voulais, c'était le dossier historique complet et merci pour la clarification.
Devesh Khandelwal
@DeveshKhandelwal Ce n'est pas la solution que vous vouliez mais quelqu'un d'autre pourrait la trouver utile. La réponse de Radu est bonne, c'est juste une réponse différente. :)
Alvar
1

Taper historysur le shell liste toutes les commandes de l'historique. On peut utiliser la commande suivante pour enregistrer l'historique dans un autre fichier:

history > *textfile*
Devesh Khandelwal
la source