Définir une variable à partir d'un fichier
tartenpion
-
dubcek Messages postés 19032 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 19032 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir,
Je voudrais créer un script qui me lance des commandes en fonction de ce qu'il y a dans un fichier externe.
Je bloque car je ne sais pas comment dans mon script indiquer qu'il faille trouver tel mot dans le fichier externe et qu'il regarde ce qu'il y a après (par exemple si dans mon fichier externe j'ai une ligne avec DOSSIER_TMP=/home/pouet/tmp je voudrais que le script crée une variable DOSSIER_TMP ayant pour valeur /home/pouet/tmp).
J'espère que vous voyez ce que je veux dire.
Merci
Je voudrais créer un script qui me lance des commandes en fonction de ce qu'il y a dans un fichier externe.
Je bloque car je ne sais pas comment dans mon script indiquer qu'il faille trouver tel mot dans le fichier externe et qu'il regarde ce qu'il y a après (par exemple si dans mon fichier externe j'ai une ligne avec DOSSIER_TMP=/home/pouet/tmp je voudrais que le script crée une variable DOSSIER_TMP ayant pour valeur /home/pouet/tmp).
J'espère que vous voyez ce que je veux dire.
Merci
A voir également:
- Définir une variable à partir d'un fichier
- Fichier bin - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Fichier rar - Guide
5 réponses
hello
chmod u+x nom_du_fichie et exécuter ce fichier avec source nom_du_fichier
#!/bin/bash
export DOSSIER_TMP=/home/pouet/tmp
chmod u+x nom_du_fichie et exécuter ce fichier avec source nom_du_fichier
#!/bin/bash
export DOSSIER_TMP=/home/pouet/tmp
Je comprend pas le but de la commande export mais ton code suppose qu'on connaisse déjà le contenu du fichier externe donc ça le rend inutile, mon script doit lire le contenu du fichier externe et interpreter toute les lignes du style "IP=XXX.XXX.XXX.XXX" comme une variable.
man bash:
export
export [-fn] [-p] [name[=value]]
Mark each name to be passed to child processes in the environment
sans export, une variable n'existe que dans le shell courant et pas dans les commandes démarrées depuis ce shell.
dans ton script, lire une ligne et l'exécuter, par ex. :
C=$(grep IP= fichier)
$C
export
export [-fn] [-p] [name[=value]]
Mark each name to be passed to child processes in the environment
sans export, une variable n'existe que dans le shell courant et pas dans les commandes démarrées depuis ce shell.
dans ton script, lire une ligne et l'exécuter, par ex. :
C=$(grep IP= fichier)
$C
bah en fait il doit pas executer simplement ce qui est dans le fichier car c'est pas des commandes ca peut être par exemple DHCP=yes (ou no) pour définir si on veut utiliser le service DHCP pour configurer le réseau.
Je pense avoir trouvé avec un DHCP=`grep '^DHCP=\(yes\|no\)' | cut -d= -f2`
normalement ça ça me rentrera yes ou no dans la variable DHCP,
MAIS comme tu m'as l'air charitable tu peux sans doute m'aider pour la suite, on me dit (c'est un TP) que "dans le cas d'une attribution dynamique via DHCP, quel est le nom de la machine a renvoyer au DHCP, quel est le délai d'attente avant l'arret des requetes"
ceci correspond aux lignes HOSTNAME=`hostname`et TIMEOUT=5 de mon fichier externe mais a quoi servent-elle si DHCP marche sans ça?
Merci de ton soutien ^^
Je pense avoir trouvé avec un DHCP=`grep '^DHCP=\(yes\|no\)' | cut -d= -f2`
normalement ça ça me rentrera yes ou no dans la variable DHCP,
MAIS comme tu m'as l'air charitable tu peux sans doute m'aider pour la suite, on me dit (c'est un TP) que "dans le cas d'une attribution dynamique via DHCP, quel est le nom de la machine a renvoyer au DHCP, quel est le délai d'attente avant l'arret des requetes"
ceci correspond aux lignes HOSTNAME=`hostname`et TIMEOUT=5 de mon fichier externe mais a quoi servent-elle si DHCP marche sans ça?
Merci de ton soutien ^^
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question