Demande de script linux [Résolu/Fermé]

Signaler
-
 Florent -
Bonjour,

Je vous contact car je voudrais savoir si une personne pourrais prendre un peut de sont temps pour me faire un petit script Linux, voila j'ai plusieurs fichiers en .ovpn et donc plusieurs vpn, je voudrais un script avec un menu qui me permettrais de choisir le lieux de connexion et suivant le choix la commande suivante se lance .
/openvpn canada.ovpn

suivant le choix du pays la commande change bien entendu, voici ce que j'ai en vpn.

Allemagne1
Belgique
Canada3
Etats-Unis2
Grèce
Lettonie
Pologne1
Royaume-Uni
Allemagne2
Bulgarie
Danemark
Etats-Unis3
Hongrie1
Lituanie1
Pays-Bas1
Pologne
Russie
Ukraine
Angleterre
Espagne
Finlande1
Irlande1
Luxembourg1
Pays-Bas2
Portugal
Slovénie
Autriche
Canada1
Estonie
France1
Islande1
Malte1
Pays-Bas3
Republique-Tcheque
Suède
Belgique1
Canada2
Etats-Unis1
France2
Italie1
Norvège1
Pays-Bas4
Roumanie
Suisse


Merci pour votre aide

3 réponses

Merci pour vos réponses cela serait sympathique de votre part
Messages postés
35354
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 330
Salut,

Pour faire simple, utilise zenity, ce qui me semble sera le plus facile pour toi.

L'idée c'est de mettre la liste de tous tes différents lieux de connexion dans un fichier (1 nom par ligne et attention à la casse qui doit être la même que le nom de tes fichiers openvpn), d'appeler cette liste via zenity, ce qui te donnera une jolie fenêtre avec une liste déroulante, depuis laquelle tu choisiras ton pays.

Le résultat en sera une partie du nom de ton fichier de conf.
Il ne te restera plus qu'à appeler le bon fichier en combinant le résultat avec l'extension .vpn ;-)

Voilà à quoi ressemble la commande zenity (plop étant le nom du fichier contenant la liste) :
zenity --entry $(sort plop) 2>/dev/null


Voila le résultat à l'écran :





☮ Zen my nuggets ☯
Faites un geste pour l'environnement, fermez vos fenêtres et adoptez un manchot. <('')
je voudrais un script avec un menu qui me permettrait de choisir le lieu de connexion

" Un script avec un menu" et nom un script qui lancent un menu sinon je l'aurais mentionné et ça je ne l'ai pas écrit après mais, bien au début.
Messages postés
35354
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 330 > Florent
Un script avec un menu ne veut rien dire !

Un script qui affiche un menu serait plus approprié, mais là encore rien ne précise à quoi doit ressembler ledit menu ;-\
Un script avec un menu ne veut rien dire ? A bon ! alors si je vous dis en tant que caissière un payement avec carte et que vous payez avec votre carte, ça ne vous vient pas à l'esprit qu'il faut un appareil avec ?

Cela tombe sous sens que quand je vous dis un script avec un menu comme un site web avec un menu ou un carrousel forcement c'est qu'on veut l'affichage d'un menu ou un conteneur d'image dynamique et de plus je mentionne bien non graphique à mon deuxième message pour donner des précisions.

Vous avez une logique implacable.
Messages postés
35354
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 330 > Florent
et de plus je mentionne bien non graphique à mon deuxième message pour donner des précisions.
Trop tard j'avais déjà (bien) répondu à la question initiale.
Bon ce n'est pas grave merci de votre attention et bonne soirée à vous.
Messages postés
35354
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 330
./foo.sh

Résultat :



;-))
Messages postés
35354
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 330
#! /bin/bash

clear

echo "Liste des pays pour la connexion VPN :"
echo
nl plop | sed 'N;N;N;s/\(^ *\|\t\)/ /Mg;s/\n/\t\t/g'
echo
read -p "Chosissez le numéro du lieu d'où se fera la connexion VPN : " choix
echo
pays=$(sed -n ${choix}p plop)

echo "Lancement du script \"${pays}.ovpn\" ..."
echo
echo "Bonne connexion avec ${pays} ;-)"
echo
Plop étant le nom du fichier n'est-ce pas ?
Jolie travail Zipe31
faut-il que dans le fichier plop en question cela soit représenter comme ceci ligne par ligne

openvpn Allemagne.ovpn
openvpn Russie.ovpn
etc ....

puisque si je comprend ton screenshot, foo.sh lance le script indiqué juste au-dessus qui lui lit la liste des vpn.