Définir une variable à partir d'un fichier
Fermé
tartenpion
-
22 déc. 2007 à 23:34
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 - 24 déc. 2007 à 12:18
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 - 24 déc. 2007 à 12:18
A voir également:
- Définir une variable à partir d'un fichier
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier host - Guide
- Ouvrir un fichier .bin - Guide
5 réponses
dubcek
Messages postés
18753
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
7 novembre 2024
5 619
23 déc. 2007 à 10:20
23 déc. 2007 à 10:20
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.
dubcek
Messages postés
18753
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
7 novembre 2024
5 619
23 déc. 2007 à 14:35
23 déc. 2007 à 14:35
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
dubcek
Messages postés
18753
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
7 novembre 2024
5 619
24 déc. 2007 à 12:18
24 déc. 2007 à 12:18
je ne connais pas les details, mais je dirais changer les valeurs par defaut:
5 secondes de timeout si le serveur ne répond pas, le défaut est peut-être 30s
changer le nom de la machine par le nom de la machine locale et ne pas utiliser le nom defini par la config. DHCP
5 secondes de timeout si le serveur ne répond pas, le défaut est peut-être 30s
changer le nom de la machine par le nom de la machine locale et ne pas utiliser le nom defini par la config. DHCP