Script bash
Résolu
finaltouch
Messages postés
11
Statut
Membre
-
finaltouch Messages postés 11 Statut Membre -
finaltouch Messages postés 11 Statut Membre -
Bonjour,
Je suis débutant sous linux et encore plus pour créer des scripts. Je cherche à modifier le fichier /etc/network/interface afin de choisir gràce à l'éxécution de mon script l'IP suivant le sous réseau que je souhaite.
Je souhaiterai changer:
address 192.168.0.123 par ---> address 192.168.1.123
gateway 192.168.0.1 par ---> gateway 192.168.1.1
Je pense devoir utiliser la commande head ou même peut-être cut pour générer mon script ...Cependant je ne vois pas vraiment comment le réaliser .
Ci-dessous mon début de script .
#!/bin/bash
if [ $1 = "peda" ]; then
{ echo "interface vlan péda activée";}
else [ $1 = "admin" ];
{ echo "interface vlan admin activée";}
fi
cat /etc/network/interface0 > tmp
if [ $var1 = "address"] then
fi
Merci d'avance
Final_touch
Je suis débutant sous linux et encore plus pour créer des scripts. Je cherche à modifier le fichier /etc/network/interface afin de choisir gràce à l'éxécution de mon script l'IP suivant le sous réseau que je souhaite.
Je souhaiterai changer:
address 192.168.0.123 par ---> address 192.168.1.123
gateway 192.168.0.1 par ---> gateway 192.168.1.1
Je pense devoir utiliser la commande head ou même peut-être cut pour générer mon script ...Cependant je ne vois pas vraiment comment le réaliser .
Ci-dessous mon début de script .
#!/bin/bash
if [ $1 = "peda" ]; then
{ echo "interface vlan péda activée";}
else [ $1 = "admin" ];
{ echo "interface vlan admin activée";}
fi
cat /etc/network/interface0 > tmp
if [ $var1 = "address"] then
fi
Merci d'avance
Final_touch
A voir également:
- Script bash
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Bingo bash free - Télécharger - Divers Jeux
- Bash addition - Forum Shell
4 réponses
Voici mon fichier /etc/network/interface :
auto eth0
iface eth0 inet manual
auto tap1
iface tap1 inet manual
tunctl_user <XXXX>
auto bridge0
iface bridge0 inet static
post-up chmod ugo+rw /dev/net/tun
address 192.168.0.123
netmask 255.255.255.0
gateway 192.168.0.1
bridge-ports eth0 tap1
bridge-ageing 7200
bridge-fd 0
iface lo inet loopback
J'ai vu que l'on pouvait utiliser la commande sed ... Mais après c'est prail comment ??
Merci de t'interesser à mon pb !!
auto eth0
iface eth0 inet manual
auto tap1
iface tap1 inet manual
tunctl_user <XXXX>
auto bridge0
iface bridge0 inet static
post-up chmod ugo+rw /dev/net/tun
address 192.168.0.123
netmask 255.255.255.0
gateway 192.168.0.1
bridge-ports eth0 tap1
bridge-ageing 7200
bridge-fd 0
iface lo inet loopback
J'ai vu que l'on pouvait utiliser la commande sed ... Mais après c'est prail comment ??
Merci de t'interesser à mon pb !!
J'ai avancé dans mon problème . il change bien mon adresse IP . Je met tout cela dans un fichier tmp . Comment l'appliquer ensuite à mon fichier /etc/network/interface ??
#!/bin/bash
cat /etc/network/interface0 > tmp
if [ $1 = "pedagogie" ]; then
{ echo "interface vlan pédagogie en cours d'activation";}
sed 's/192.168.1.1/192.168.0.1/g' <tmp
else [ $1 = "administratif" ];
{ echo "interface vlan administratif en cours d'activation";}
sed 's/192.168.0.1/192.168.1.1/g' <tmp
fi
#!/bin/bash
cat /etc/network/interface0 > tmp
if [ $1 = "pedagogie" ]; then
{ echo "interface vlan pédagogie en cours d'activation";}
sed 's/192.168.1.1/192.168.0.1/g' <tmp
else [ $1 = "administratif" ];
{ echo "interface vlan administratif en cours d'activation";}
sed 's/192.168.0.1/192.168.1.1/g' <tmp
fi
#!/bin/bash
#
# Définition des @IP
IP1="192.168.0.123"
IP2="192.168.1.123"
# Définition des passerelles
GATEWAY1="192.168.0.1"
GATEWAY2="192.168.1.1"
# Définition du fichiers Network
NETWORK_FILE="/etc/network/interface"
# Fichier exec shell script temp
SED_FIC="/tmp/sed_tmp"
# Début du script
if [ $1 = "peda" ]; then {
echo "interface vlan péda activée"
# Changement de l'adresse IP
IP_TO_CHANGE=`grep address $NETWORK_FILE | awk '{print $2}'`
sed -i 's/$IP_TO_CHANGE/$IP1/' $NETWORK_FILE > $SED_FIC
chmod 755 $SED_FIC
$SED_FIC
rm $SED_FIC
# Changement de la passerelle
GATEWAY_TO_CHANGE=`grep gateway $NETWORK_FILE | awk '{print $2}'`
echo "sed -i 's/$GATEWAY_TO_CHANGE/$GATEWAY1/' $NETWORK_FILE" > $SED_FIC
chmod 755 $SED_FIC
$SED_FIC
rm $SED_FIC
}
else [ $1 = "admin" ]; {
echo "interface vlan admin activée"
# Changement de l'adresse IP
IP_TO_CHANGE=`grep address $NETWORK_FILE | awk '{print $2}'`
echo $IP_TO_CHANGE
echo "sed -i 's/$IP_TO_CHANGE/$IP2/' $NETWORK_FILE" > $SED_FIC
chmod 755 $SED_FIC
$SED_FIC
rm $SED_FIC
# Changement de la passerelle
GATEWAY_TO_CHANGE=`grep gateway $NETWORK_FILE | awk '{print $2}'`
echo $GATEWAY_TO_CHANGE
echo "sed -i 's/$GATEWAY_TO_CHANGE/$GATEWAY2/' $NETWORK_FILE" > $SED_FIC
chmod 755 $SED_FIC
$SED_FIC
rm $SED_FIC
}
fi