Comment puis-je trouver l'historique des commandes si un utilisateur a utilisé un espace avant la commande?

13

Avons-nous un moyen de connaître l'historique des commandes si l'utilisateur utilise l'espace avant toute commande dans le bash, car si l'utilisateur utilise l'espace avant toute commande, il ne s'affichera pas dans l'historique?

khanthegeek
la source
Juste curieux, pourquoi voulez-vous voir les espaces?
joshreesjones
Je ne veux pas voir les espaces, je veux voir la commande exécutée par l'utilisateur si l'utilisateur utilise un espace avant cette commande.Parce que normalement, si vous mettez de l'espace avant toute commande, il ne sera pas enregistré dans l'historique du shell.
khanthegeek

Réponses:

14

Il n'y a aucun moyen de le savoir maintenant. Vous avez probablement un paramètre dans ~/.bashrclequel cache intentionnellement toutes les commandes précédant d'un espace de l'historique. Pour modifier ce comportement à l'avenir, vous pouvez modifier ~/.bashrc. Recherchez cette ligne

HISTCONTROL=ignoredups:ignorespace

et changez-le en

HISTCONTROL=ignoredups
Sparhawk
la source
que se passera-t-il avec les ignorés?
khanthegeek
ignoredupsest là aussi par défaut. Cela évitera que des commandes en double consécutives soient écrites plusieurs fois dans l'historique. Vous pouvez le laisser là si vous le souhaitez, ou le supprimer si vous ne souhaitez pas ce comportement.
Sparhawk
2
@Rinzwind doublons consécutifs . Pour ce que vous demandez, erasedupsc'est la bonne option, IIRC.
muru
2
@muru oh je me demandais juste. Je voudrais vraiment savoir si le 2e rm a été exécuté ;-)
Rinzwind
2
@KasiyA "Une valeur de ignoreboth est un raccourci pour ignorespace et ignoredups." - duman bash
muru