2016-07-22 1 views
6

Je souhaite vérifier sur mon système Linux la date et l'heure de la commande.Historique des commandes Linux avec date et heure

Je tirai des commandes comme ceci:

history 50 

Il me montre les 50 dernières commandes historique, mais pas avec la date et l'heure à laquelle il a été congédié. Est-ce que quelqu'un sait comment le faire?

+5

http://askubuntu.com/questions/391082/how-to-see-time- timbres-dans-bash-histoire – gavv

+3

http://superuser.com/questions/397527/retrieve-linux-command-line-history-by-date – gavv

+2

et même ici: http://stackoverflow.com/questions/11987761/ comment-trouver-date-sage-histoire-de-linux-commandes-être-tiré – gavv

Répondre

7

regarding this link une autre façon de fisrt solution provided by krzyk est

echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bash_profile 
source ~/.bash_profile 

ce qui est de façon permanente.

+0

La réponse de Fang a la solution temporaire. –

+0

Il montre la date et l'heure d'aujourd'hui pour toutes les commandes précédemment exécutées qui est faux, est-il possible d'obtenir la date et l'heure correctes quand les commandes précédentes ont été exécutées? –

+0

Je l'ai deviné, il n'y en a pas car l'historique du fichier bash n'est qu'un texte sans plus de données. –

5

Essayez ceci:

> HISTTIMEFORMAT="%d/%m/%y %T " 

> history 

Vous pouvez régler le format à votre goût, bien sûr.

+0

Cela n'affiche pas la date et l'heure de la commande lors de son déclenchement. Disons que la commande a été virée hier mais si j'écris comme vous l'avez suggéré, elle affichera la date d'aujourd'hui. Ce que je ne veux pas. – Rushvi

+1

@ RJ07: Cela ne fonctionnera pas sur les commandes exécutées dans le passé, car aucun horodatage n'a été enregistré pour elles. Cependant, si vous ajoutez ceci à votre bash.src, les horodatages seront sauvegardés pour toutes les futures entrées de bash. – Fang

+0

ok merci d'avoir répondu. – Rushvi

2

Cela dépend du shell (et de sa configuration) en standard bash seule la commande est stockée sans la date et l'heure (vérifiez .bash_history s'il y a un horodatage).

Pour que bash stocke l'horodatage, vous devez définir HISTTIMEFORMATavant en exécutant les commandes, par ex. au .bashrc ou .bash_profile. Cela obligera bash à stocker les horodatages dans .bash_history (voir les entrées commençant par #).

+0

Donc, si elle est stockée sans heure et heure, il n'y a plus moyen d'obtenir l'heure? – Rushvi

+1

Exactement, si ce n'est pas stocké n'importe où, vous ne pouvez pas le sortir. –

+0

ohk. Merci d'avoir répondu – Rushvi

0
HISTTIMEFORMAT="%d/%m/%y %H:%M " 

Pour toutes les commandes tapées avant cela, il ne va pas aider car ils vont tout simplement obtenir un temps par défaut lorsque vous activé l'historique, mais il enregistrera le temps de toutes les autres commandes après cela.

Si vous le souhaitez pour connecter l'histoire permanente, vous devez mettre la ligne suivante dans votre ~/.bashrc

export HISTTIMEFORMAT="%d/%m/%y %H:%M "