Résolu le 15-11-18 Besoin d'aide sur l'élaboration d'un script Bash

Questions concernant les lignes de commandes
Maks
Messages : 8
Enregistré le : mar. 7 nov. 2017 12:54

Besoin d'aide sur l'élaboration d'un script Bash

Message par Maks »

Bonjour à toutes et tous,

J'apprends actuellement les scripts Bash, je suis encore "débutant", je m'amuse avec les variables d'environnement, les conditions if, then, else et la fonction echo.

Je suis en train d'élaborer un script permettant de lancer automatiquement la commande apt update puis à la suite la commande apt upgrade sans que j'intervienne. Rien de compliqué jusqu'ici, ça marche.

Code : Tout sélectionner

#!bin/bash

		apt update
		apt upgrade
Je voudrais le complexifier un peu en récupérant les informations sur le nombre de mises à jour et en affichant un message avec echo.
s'il y a 0 mise à jours echo affiche "votre système est à jour"
s'il y a de 1 à plusieurs mises à jour disponibles la commande upgrade s'effectue puis echo affiche "votre système est maintenant à jour"

Je ne trouve pas comment récupérer l'information sur le nombre de mises à jour ? avez vous un idée ?

Merci et bonne fêtes de fin d'année à tout le monde
Modifié en dernier par Maks le dim. 7 janv. 2018 22:18, modifié 3 fois.
Configuration :

PC portable Sony VAIO VGNC2S
Intel Core 2 Duo
2Go de ram (peut aller jusqu'à 4Go normalement, mais ne détecte que 2Go !!!)
SSD 120Go
Linux Mint 18.3 Sylvia - MATE - 32 bits

Avatar du membre
tyrry
Messages : 5604
Enregistré le : mar. 21 juil. 2015 07:42
Localisation : à l'ouest

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par tyrry »

Slt ,
essai : sudo apt list --upgradable
@+
Desktop: LXDE Distro: Debian 12 Bookworm
Kernel: 6.1.0-18-amd64 Drive: Intel Nvme 240
CPU: Ryzen 3 PRO 2200GE RAM: 16 go Graphics Card: AMD ATI Radeon Vega Series

Avatar du membre
tioker
Messages : 980
Enregistré le : sam. 6 mai 2017 00:33
Localisation : Anjou...Feu !
Contact :

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par tioker »

Et tu peux détourner la sortie de la commande (sudo apt list --upgradable >> upgradable.txt).
Après tu lis le fichier et tu comptes ce que tu veux ... si ce qui est dedans te convient.
Cdlt
Modifié en dernier par débitant le dim. 31 déc. 2017 17:45, modifié 1 fois.
Raison : suppression de la citation reprenant le message précedent à 100%
HP Victus 16: Mint 21.3 Cinnamon 6,0,4 + Windows 11 - Ryzen 5 5600H - NVIDIA GeForce GTX 1650 - Mem 16Go - SSD 512Go
pCloud Synchronisation en temps réel des 4 dossiers personnels

Maks
Messages : 8
Enregistré le : mar. 7 nov. 2017 12:54

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par Maks »

Bonjour,

Tout d'abord meilleures vœux pour cette année 2018 à toutes et tous !

Merci tyrry et tioker désolé de répondre un peu tardivement, mais je n'ai plus internet chez moi depuis 4 jours, problème avec la fibre dans l'immeuble suite aux bidouillages d'un technicien fibre chez un voisin bref je suis en partage connexion 4G.

Concernant mon script ça fonctionne visiblement !

je récupère les mise à jours dispo puis compte le nombre de lignes avec le commande sudo apt list --upgradable | wc -l (à l'interieur d'une variable pour en récupérer le résultat)

s'il y au minimum 1 mise à jour disponible (en plus de la ligne "En train de lister... Fait") il lance un apt upgrade et termine avec un echo"votre système est maintenant à jour"

sinon il ne lance pas la commande apt upgrade, mais simplement un echo"votre système est déjà à jour"

par contre, j'ai un message warning avant l’exécution du script, je pense à cause du symbole pipe :
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Est-ce-que c'est important ou pas ?

Merci pour votre aide !
Configuration :

PC portable Sony VAIO VGNC2S
Intel Core 2 Duo
2Go de ram (peut aller jusqu'à 4Go normalement, mais ne détecte que 2Go !!!)
SSD 120Go
Linux Mint 18.3 Sylvia - MATE - 32 bits

Maks
Messages : 8
Enregistré le : mar. 7 nov. 2017 12:54

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par Maks »

Bon j'ai cherché et le message WARNING est bien lié à l'utilisation du pipe, car il n'est pas recommandé d'utiliser un pipe à l'intérieur d'un script donc c'est une simple mise en garde si j'ai bien compris. Bref mon script fonctionne, Merci à vous tous !
Configuration :

PC portable Sony VAIO VGNC2S
Intel Core 2 Duo
2Go de ram (peut aller jusqu'à 4Go normalement, mais ne détecte que 2Go !!!)
SSD 120Go
Linux Mint 18.3 Sylvia - MATE - 32 bits

Avatar du membre
débitant
modérateur
Messages : 11534
Enregistré le : mar. 14 juil. 2015 18:22
Localisation : Lorraine France

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par débitant »

Si le sujet est résolu merci d'éditer le premier message du sujet, puis :
  1. mettre un petit Image, comme suit: Image
  2. mettre un [résolu] (entre crochets et à gauche) dans le titre de ce premier message
voir tuto ici

Maks
Messages : 8
Enregistré le : mar. 7 nov. 2017 12:54

Re: Besoins d'aide sur l'élaoration d'un scrip Bash

Message par Maks »

voilà c'est fait
Configuration :

PC portable Sony VAIO VGNC2S
Intel Core 2 Duo
2Go de ram (peut aller jusqu'à 4Go normalement, mais ne détecte que 2Go !!!)
SSD 120Go
Linux Mint 18.3 Sylvia - MATE - 32 bits


Maks
Messages : 8
Enregistré le : mar. 7 nov. 2017 12:54

Re: [résolu] Besoins d'aide sur l'élaoration d'un scrip Bash

Message par Maks »

Ha ben si je lis en diagonale ! voilà normalement c'est bon.
Configuration :

PC portable Sony VAIO VGNC2S
Intel Core 2 Duo
2Go de ram (peut aller jusqu'à 4Go normalement, mais ne détecte que 2Go !!!)
SSD 120Go
Linux Mint 18.3 Sylvia - MATE - 32 bits


Répondre