Bonjour,
je voudrais avoir la possibilité de faire un script dans lequel j’ai un arrêt, avec accès au shell pour faire par exemple des vérification intermédiaires, puis relancer le script pour qu’il continue.
le script est un script bash impérativement.
Comment faire?
merci
Je ne sais pas vraiment si c’est possible, néanmoins, je pense à cette idée.
Tu lances ton script et il s’arrête là où tu en as besoin.
Tu fais tes vérifs, et une fois faite, tu relances le script avec une option pour continuer son traitement après celui accompli.
Tu peux lancer la commande /usr/bin/bash
en plein milieu de ton script pour avec un bash (ça marche aussi avec un autre interpréteur de commandes) et, dès que tu fermes l’interpréteur de commande, ton script continue.
Oui c’est exactement ça.
j’ai actuellement un problème dans mon script postinst d’installation via un DVD customisé via simple-cdd.
Lors de l’execution du script postinst, NetworkManager n’est pas actif. Les commandes systemctl n’ont pas l’air de fonctionner. et je voulais voir s’il était possible de faire démarrer network_manager afin de pouvoir utiliser nmcli pour faire la configuration réseau nécessaire et particulière (j’ai 2 cartes réseau, l’une paramétrée en standard, l’autre sur un réseau d’admin). mais il ne me configure que la seconde sans prendre en compte la première (ce qui me semble logique ceci dit).
le soucis c’est que NetworkManager travaille avec des UUID qu’on ne peut pas déterminer…sans network-manager et nmcli. ce qui est un peu idiot.
je sais le faire en ligne de commande directe: CTRL-Z puis fg ou bg. Mais de façon automatique je ne sais pas faire le CTRL-Z en fait.
En gros cela revient à ouvrir un shell à l’intérieur d’un script.
en gros oui
je viens d’essayer
#!/bin/bash
echo "debut";
/bin/bash
echo "fin";
et au lieu d’ouvrir un nouveau bash il me donne la main; j’ai tapé exit et fin s’est affiché
autre solution: tu crée un crontab, associé à un fichier lock pour éviter de lancer deux fois la commande.
A oublier, ce’st pour utiliser avec un script postinst utiliser avec debian-installer, donc le crontab est à oublier, le système n’est pas démarré.
par contre je n’avais pas pensé au /bin/bash dans le script.