Bash History: ajouter la dernière commande à un fichier

Résolu/Fermé
Zyfzyf Messages postés 4 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 23 décembre 2019 - Modifié le 22 déc. 2019 à 04:12
Zyfzyf Messages postés 4 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 23 décembre 2019 - 23 déc. 2019 à 17:24
Bonjour :)

Je voudrais créer un script qui récupère la commande passée juste avant pour l'ajouter à un fichier.

Le but est (ou était) de pouvoir écrire "facilement" un script de réinstallation/compilation/configuration(etc.) de mon Raspbian lite.

Je me bat avec la commande history, les variables, les pipes, grep et tail,
mais il me manque pas mal d'expérience de l'ensemble et du détail et un coup de main serait bienvenu!

J'ai ceci qui donne un résultat correct mais je voudrais me débarrasser du nombre d'index et je n'ai pas trouvé de moyen simple:

history | tail -n 2 | head -n 1


j'essaie ceci qui ne donne rien et je ne vois pas pourquoi,
j'ai des difficultés à trouver le bon document explicatif...

VAR=&(history | tail -n 2 | head -n 1)

Salutations !

PS :
Suite de mon travail

pi@raspberrypi:~ $ history | tail -n 2 | head -n 1 | sed --debug -e '/^\s/d'
SED PROGRAM:
/^\\s/ d
INPUT: 'STDIN' line 1
PATTERN: 167 history | tail -n 2 | head -n 1 | sed --debug -e '/^\\z/d'
COMMAND: /^\\s/ d
END-OF-CYCLE:

> toujours rien de concluant

4 réponses

Zyfzyf Messages postés 4 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 23 décembre 2019
Modifié le 22 déc. 2019 à 04:36
c'est résolu:

history | tail -n 2 | head -n 1 | sed -e 's/^..[0-9]*//'
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 419
22 déc. 2019 à 08:27
Salut,

Un bon tuto sur l'historique du shell ici

Je t'invite aussi à jeter un œil au
man history
plein de bons conseils, notamment sur le rappel des commandes.


0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 419
22 déc. 2019 à 09:37
Un autre tuto encore plus détaillé ici
0
Zyfzyf Messages postés 4 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 23 décembre 2019
23 déc. 2019 à 16:56
Merci Zipe !!
J'ai galéré avec le man history, je crois qu'il faut que je me familiarise avec le bash avant de pouvoir comprendre ça en détail, tes tutos vont m'aider :)
0
Zyfzyf Messages postés 4 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 23 décembre 2019
Modifié le 23 déc. 2019 à 17:24
après avoir lu un des tutos, j'ai constaté que :
!! >> fichier

est équivalent à
history | tail -n 2 | head -n 1 | sed -e 's/^\s*[0-9]*..//' >> fichier

mais je suis content d'avoir réviser mes regex ....
0