#1 Le 21/10/2022, à 20:42
- pangol1
[Résolu] Comment automatiser mon script bash
Bonjour à vous . Je suis désolé je suis un gros NOOB mais je m'intéresse de plus en plus au monde LINUX et je viens de faire mon premier script bash en utilisant vim pour faire mes mises à jour, et j'aimerais savoir s'il était possible d'automatiser tout ça sans même taper le O de OUI pour valider tout ça , c'est mon petit problème de noob :lol :
Si vous avez des idées pour me proposer un script que je puisse faire la main je suis preneur merci à vous
Dernière modification par pangol1 (Le 24/10/2022, à 21:38)
Hors ligne
#2 Le 21/10/2022, à 20:54
- Qid
Re : [Résolu] Comment automatiser mon script bash
voila mon petit problème de noob
Je ne vois pas l'intérêt d'un script pour ça... Enfin tout dépend de son contenu mais en tous cas l'automatisation c'est pas le script qui va la gérer... Si la commande utilisée dans le script ne le permet pas ça va être compliqué de répondre à ta demande... En l'occurrence si tu avais regardé le man d'apt tu y aurais certainement retrouvé l'option -y qui justement permet d'automatiser la réponse...
J'avoue être surpris que tu n'ais pas sû trouver cette réponse par toi même...
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#3 Le 21/10/2022, à 21:01
- nany
Re : [Résolu] Comment automatiser mon script bash
Bonjour,
mon premier script bash en utilisant vim pour faire mes mis à jour
Les mises à jour automatiques sont déjà en place avec unattended-upgrades. Mais il faut bien commencer quelque part alors pourquoi pas ?
et j'aimerais savoir si c'était possible d'automatisé tout ça sans même taper le O de OUI pour validé tout ça
Oui, c’est possible.
Je suppose que tu fais appel à apt-get (apt étant à éviter dans un script).
Alors, dans un terminal, lance la commande
man apt-get
et intéresse-toi aux options, plus particulièrement à l’option -y.
Dernière modification par nany (Le 21/10/2022, à 21:01)
Hors ligne
#4 Le 21/10/2022, à 21:02
- Watael
Re : [Résolu] Comment automatiser mon script bash
mais, tu ne voudrais pas t'intéresser à la grammaire, d'abord ?
ok, ok, je sors.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 22/10/2022, à 07:28
- Qid
Re : [Résolu] Comment automatiser mon script bash
tu fais appel à apt-get (apt étant à éviter dans un script).
Au fait !? Pourquoi Apt serait à éviter dans un script ? J'avoue que j'ai dû mal à comprendre cette idée...
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#6 Le 22/10/2022, à 08:20
- iznobe
Re : [Résolu] Comment automatiser mon script bash
Bonjour ,
@qid :
apt-get est prevu pour etre utiliser dans des scripts .
apt pour les commandes manuelles .
question de formatage de sortie des commandes ( si je me rapelle bien ) , apt get formatte les sorties de façon a etre exploitées par un script .
@pangol1 : je reponds a ta question tout de meme
Pour automatiser ton script , tu peux utiliser une tache cron ( ou plusieurs ) .
Dernière modification par iznobe (Le 22/10/2022, à 08:23)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#7 Le 22/10/2022, à 08:29
- nany
Re : [Résolu] Comment automatiser mon script bash
Pourquoi Apt serait à éviter dans un script ?
Une histoire de compatibilités ascendantes que je ne comprends pas mais c’est apt lui-même qui le dit.
UTILISATION DE SCRIPTS ET DIFFÉRENCES AVEC LES AUTRES OUTILS DAPT La ligne de commande de apt(8) est conçue comme un outil pour l'utilisateur et son comportement peut varier selon ses versions. Bien qu'il s'efforce de ne pas casser les compatibilités ascendantes, cela ne peut pas non plus être garanti, si une modification semble bénéfique pour une utilisation interactive. Toutes les fonctionnalités d'apt(8) sont aussi proposées dans les outils dédiés d'APT tels que apt-get(8) ou apt-cache(8) apt(8) modifie seulement la valeur par défaut de certaines options (voir apt.conf(5) et en particulier le champ d'action Binary). Aussi vous devriez préférer l'utilisation de ces commandes (éventuellement avec certaines options complémentaires activées) dans les scripts parce qu'elles conservent autant que possible la compatibilité ascendante.
Hors ligne
#8 Le 22/10/2022, à 08:33
- nany
Re : [Résolu] Comment automatiser mon script bash
@pangol1 : je reponds a ta question tout de meme
Pour automatiser ton script , tu peux utiliser une tache cron ( ou plusieurs ) .
Il me semble (ou alors j’ai mal lu) que pangol1 demande comment répondre oui automatiquement à la question « voulez-vous continuer » d’apt-get (ou apt) et pas l’automatisation de l’exécution de son script.
Hors ligne
#9 Le 22/10/2022, à 08:36
- iznobe
Re : [Résolu] Comment automatiser mon script bash
Bonjour nany .
le titre est :
" Comment automatisé mon script bash " , et dan le #1 :
et j'aimerais savoir si c'était possible d'automatisé tout ça sans même taper le O de OUI
j ' en deduis que la question principale est " comment automatisé " , et que la cerise sur le gateau est : " sans meme taper oui " . je vois la chose comme ca , mais peut etre que je me trompe .
Dernière modification par iznobe (Le 22/10/2022, à 08:37)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#10 Le 22/10/2022, à 08:42
- Compte supprimé
Re : [Résolu] Comment automatiser mon script bash
je vien de réalisé mon premier script bash en utilisant vim pour faire mes mis à jour , et j'aimerais savoir si c'était possible d'automatisé tout ça sans même taper le O de OUI pour validé tout ça
Si on interprète en faisant abstraction de l'orthographe, on peut penser que la demande d'automatisation inclue le lancement du script.
Mais systemd, c'est un peu comme l'UEFI, l'IPv6 ou d'autres nouveautés de plusieurs années, on peut arriver à continuer à faire sans, dans certains cas.
Pour planifier le lancement du script, il y a aussi systemd, service et timer. C'est peut-être plus pertinent pour quelqu'un qui débute maintenant.
https://doc.ubuntu-fr.org/creer_un_service_avec_systemd
https://wiki.archlinux.org/title/System … %C3%A7ais)
Dernière modification par Compte supprimé (Le 22/10/2022, à 08:44)
#11 Le 22/10/2022, à 08:47
- nany
Re : [Résolu] Comment automatiser mon script bash
M’kay. On peut voir ça comme ça.
Dans ce cas et comme la mise à jour doit être effectuée par root, plutôt que de créer une tâche cron ou de se lancer dans systemd, je placerais le script dans un des répertoires /etc/cron.daily, /etc/cron.hourly, /etc/cron.monthly ou /etc/cron.weekly qui sont faits pour ça.
Hors ligne
#12 Le 22/10/2022, à 09:25
- Tawal
Re : [Résolu] Comment automatiser mon script bash
Pour la compatibilité ascendante, c'est juste que les mainteneurs d'apt ne garantissent pas que le son comportement soit le même d'une version à l'autre.
Par exemple, la commande "apt update" pourrait devenir interactive.
Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
#13 Le 22/10/2022, à 10:36
- Compte supprimé
Re : [Résolu] Comment automatiser mon script bash
Par défaut, l'exécution de cron n'affiche rien. Si vous avez besoin de démarrer une interface graphique par exemple pour utiliser zenity, kdialog, dialog ou encore totem, vlc, … Il vous faudra ajouter un DISPLAY=:0 devant la commande lancée.
https://doc.ubuntu-fr.org/cron
Il faudra y penser si besoin.
Dernière modification par Compte supprimé (Le 22/10/2022, à 10:40)
#14 Le 22/10/2022, à 10:52
- Qid
Re : [Résolu] Comment automatiser mon script bash
Pour la compatibilité ascendante, c'est juste que les mainteneurs d'apt ne garantissent pas que le son comportement soit le même d'une version à l'autre.
Ah bah voilà une explication claire... Sauf que de mon point de vue elle ne tient pas vraiment : un script ça se maintient aussi un minimum... non ?
En tous cas pour revenir à la demande initiale cron ne résoudra pas le souci initial en effet... Ce qu'il demandait était bien que ce que doit faire le script se fasse sans intervention humaine ce qui n'est pas la même chose que "le script doit se lancer sans intervention humaine"...
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#15 Le 22/10/2022, à 13:31
- Tawal
Re : [Résolu] Comment automatiser mon script bash
Pour le demandeur :
J'ai un script de mise à jour automatique.
Et j'utilise un indicateur de mise à jour disponible. C'est par lui que je lance mon script.
Mon script (tout bête et appelé m_a_j) :
#!/bin/bash
apt update
apt list --upgradable
apt -y upgrade
echo
read -n 1 -p "Appuie sur une touche pour fermer" rep
Et la commande d'appel de ce script (spécifique à xfce) :
xfce4-terminal -T "Mise à jour" -x pkexec m_a_j
Le script est exécutable et dans un dossier de mon PATH.
Edit
Donc, quand mon indicateur m'indique une mise à jour possible,
je clique à droite sur son icône et demande la mise à jour.
Un terminal s'ouvre ainsi qu'une fenêtre d'authentification (demande de mot de passe).
Une fois le mot de passe entré, on voit le déroulé de la mise à jour dans le terminal.
Dernière modification par Tawal (Le 22/10/2022, à 13:38)
Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
#16 Le 22/10/2022, à 14:08
- Watael
Re : [Résolu] Comment automatiser mon script bash
mon indicateur m'indique une mise à jour possible
pourquoi apt list --upgradable alors ?
je ferais simplement apt get update && apt -y upgrade && read ... || read -p 'oops, problemo' pour que l'enchaînement des commandes soit conditionné par le résultat de la commande précédente.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#17 Le 22/10/2022, à 14:55
- Tawal
Re : [Résolu] Comment automatiser mon script bash
C'est pour le visuel.
Cela affiche en couleur la liste des paquets mis à jour.
Ok pour l'enchaînement
Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
#18 Le 22/10/2022, à 15:36
- Watael
Re : [Résolu] Comment automatiser mon script bash
c'est bô, la couleur.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#19 Le 23/10/2022, à 07:18
- k3c
Re : [Résolu] Comment automatiser mon script bash
pour Tawal
un script encore meilleur de mise à jour est topgrade
Debian 12 sur Thinkpad reconditionné
Hors ligne
#20 Le 23/10/2022, à 07:39
- Compte supprimé
Re : [Résolu] Comment automatiser mon script bash
@K3c
Bonne pioche
No longer maintained
This repository is no longer maintained. An effort was made by the community to keep maintaining the project at https://github.com/topgrade-rs/topgrade. I am not involved in this effort nor do I know the people behind it, so I encourage you to inspect their work before using the fork.
Un script pour faire les mises à jour se justifie dans le cas où l'on désactive les outils de la distribution. Dans ce cas, on peut faire des actions complémentaires et surtout choisir le moment de la mise à jour.
Mention spéciale pour Archlinux "brut" qui n'a que pacman en ligne de commande. Après chacun fait comme il trouve que c'est bien pour lui.
Dernière modification par Compte supprimé (Le 23/10/2022, à 08:03)
#21 Le 23/10/2022, à 08:52
- Qid
Re : [Résolu] Comment automatiser mon script bash
@K3c
Bonne pioche
En plus perso je n'y ai pas vu de mansion mention pour Ubuntu que ce soit sur celui-ci ou même son fork... Mais je l'ai peut-être raté...
edit : correction de faute d'orthographe...
Dernière modification par Qid (Le 23/10/2022, à 10:18)
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#22 Le 23/10/2022, à 09:09
- k3c
Re : [Résolu] Comment automatiser mon script bash
les mises à jour, ce n'est pas que apt, dans mon cas
winetricks vu que je bricole avec wine
go et rust (plein d'outils sympas sont écrits dans ces 2 langages)
les images docker
pip3
yt-dlp (le remplaçant de youtube-dl)
j'essaie d'éviter les installs avec snap et flatpack, mais bon
exemple de l'exécution de topgrade, résumé à la fin
― 10:03:03 - Summary ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
System update: OK
config-update: OK
Brew: OK
Gnome Shell Extensions: OK
rustup: OK
cargo: OK
pip3: OK
Containers: OK
Flatpak: OK
snap: OK
Wine : OK
golang: OK
yt-dlp: OK
Firmware upgrades: OK
extrait de mon fichier ~/config/topgrade.toml
[commands]
#"Python Environment" = "~/dev/.env/bin/pip install -i https://pypi.python.org/simple -U --upgrade-strategy eager jupyter"
"Wine " = "sudo /usr/bin/winetricks --self-update"
"yt-dlp" = "pip install -U yt-dlp"
"golang" = "sh ~/linux-update-go-script"
Dernière modification par k3c (Le 23/10/2022, à 09:12)
Debian 12 sur Thinkpad reconditionné
Hors ligne
#23 Le 23/10/2022, à 10:10
- Compte supprimé
Re : [Résolu] Comment automatiser mon script bash
@Qid
Vu que aimes traduire l'anglais. Tu penses que topgrade devrait résider dans un manoir ?
https://www.deepl.com/translator#en/fr/mansion
Et oui, un script ça permet de faire plus que la mise à jour de base de la distribution. Mais l'outil de Gnome gère déjà pas mal de choses.
Dans cette histoire, on n'a pas revu pangol1.
Dernière modification par Compte supprimé (Le 23/10/2022, à 10:11)
#24 Le 23/10/2022, à 10:17
- Qid
Re : [Résolu] Comment automatiser mon script bash
@Qid
Vu que aimes traduire l'anglais. Tu penses que topgrade devrait résider dans un manoir ?
https://www.deepl.com/translator#en/fr/mansion
La joie des correcteurs orthographique qu'on suit aveuglément... Celà dit c'était sensé être du français mais j'avoue que j'ai certainement fait pire en corrigeant la faute de départ... Et accessoirement j'ai fini par retrouver par moi même l'orthographe que je voulais : "mention"...
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne