1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | #!/bin/bash FICHIER_IP=[ethernet1]\nState=1\nName=Internet\nProtected=1\nMedia=0\nType=2\nGateway=\nAddress=125.246.235.245\nMask=255.0.0.0\nAddressComment=\n\n[ethernet2]\nState=2\nName=Intra\nProtected=1\nMedia=0\nType=2\nColor=1564521\n\n[ethernet3]\nState=1\nName=NET_IN\nProtected=1\nMedia=0\nType=1\nColor=FF0000\nGateway=124.128.200.100\nAddress=125.246.230.240\nMask=255.255.255.0\nAddressComment=\n\nIP_DYN=false\nLABEL_DHCP="DHCP"\nNOM_RESEAU=NET_IN\nLABEL_NOM=Name\=\n\nLABEL_ADRESSE=Address\nLABEL_MASQUE=Mask\nLABEL_PASSERELLE=Gateway\nLABEL_BLOC=ethernet\nLIGNE_NOM_RESEAU=`grep -i -n ^$LABEL_NOM$NOM_RESEAU`\nLIGNE_ENTETES=`grep -i -n $LABEL_BLOC $FICHIER_IP`; ADRESSE_IP=1.2.3.4 MASQUE_IP=255.255.0.0 PASSERELLE_IP=9.10.11.12 IP_DYN=false LABEL_DHCP="DHCP" VAR_TEMP=`echo $ADRESSE_IP | grep -i '$LABEL_DHCP'`; if [ -n "$VAR_TEMP" ] then IP_DYN=true MASQUE_IP="" PASSERELLE_IP="" fi NOM_RESEAU=NET_IN LABEL_NOM=Name\= LABEL_ADRESSE=Address LABEL_MASQUE=Mask LABEL_PASSERELLE=Gateway LABEL_BLOC=ethernet LIGNE_NOM_RESEAU=`grep -i -n ^$LABEL_NOM$NOM_RESEAU $FICHIER_IP`; NUM_LIGNE_RESEAU=`echo $LIGNE_NOM_RESEAU | cut -d':' -f1` LIGNE_ENTETES=`grep -i -n $LABEL_BLOC $FICHIER_IP`; NUMERO_LIGNE=`echo $LIGNE_ENTETES | cut -d ' ' -f1 | cut -d':' -f1` i=2 DEBUT_BLOC="0" FIN_FICHIER=`wc -l $FICHIER_IP | cut -d ' ' -f1`; FIN_BLOC=$FIN_FICHIER while [ -n "$NUMERO_LIGNE" ]&& [ "$i" -lt "$FIN_FICHIER" ] do if [ -n "$LIGNE_ENTETES" ] then NUMERO_LIGNE=`echo $LIGNE_ENTETES | cut -d ' ' -f$i | cut -d':' -f1` if [ -n "$NUMERO_LIGNE" ] then if [ "$NUMERO_LIGNE" -lt "$NUM_LIGNE_RESEAU" ] && [ "$NUMERO_LIGNE" -gt "$DEBUT_BLOC" ] then DEBUT_BLOC=$NUMERO_LIGNE fi if [ "$NUMERO_LIGNE" -gt "$NUM_LIGNE_RESEAU" ] && [ "$NUMERO_LIGNE" -lt "$FIN_BLOC" ] then FIN_BLOC=$NUMERO_LIGNE fi fi fi i=$(( $i + 1)) done echo fin 1 LABEL_DHCP_T=DHCPLeaseTime LABEL_DNS=RequesteDNS #remplacement des lignes dans le fichier en fonction du cas if [ "$IP_DYN" == false ] then echo "ce n'est pas une adresse dyn" sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_MASQUE.*$//" $FICHIER_IP sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_PASSERELLE.*$//" $FICHIER_IP sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_ADRESSE=.*$/$LABEL_PASSERELLE\=$PASSERELLE_IP\n$LABEL_ADRESSE\=$ADRESSE_IP\n$LABEL_MASQUE\=$MASQUE_IP/" $FICHIER_IP sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DHCP_T.*$//" $FICHIER_IP sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DNS=.*$//" $FICHIER_IP else echo "c'est une adresse dyn" sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DNS.*$//" $FICHIER_IP sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DHCP.*$//" $FICHIER_IP sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_ADRESSE=.*$/$LABEL_DHCP_T\=3600\n$LABEL_DNS\=0\n$LABEL_ADRESSE\=$LABEL_DHCP/" $FICHIER_IP sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_MASK.*$//" $FICHIER_IP sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_PASSERELLE.*$//" $FICHIER_IP fi echo $FICHIER_IP |
IyEvYmluL2Jhc2gKRklDSElFUl9JUD1bZXRoZXJuZXQxXVxuU3RhdGU9MVxuTmFtZT1JbnRlcm5ldFxuUHJvdGVjdGVkPTFcbk1lZGlhPTBcblR5cGU9MlxuR2F0ZXdheT1cbkFkZHJlc3M9MTI1LjI0Ni4yMzUuMjQ1XG5NYXNrPTI1NS4wLjAuMFxuQWRkcmVzc0NvbW1lbnQ9XG5cbltldGhlcm5ldDJdXG5TdGF0ZT0yXG5OYW1lPUludHJhXG5Qcm90ZWN0ZWQ9MVxuTWVkaWE9MFxuVHlwZT0yXG5Db2xvcj0xNTY0NTIxXG5cbltldGhlcm5ldDNdXG5TdGF0ZT0xXG5OYW1lPU5FVF9JTlxuUHJvdGVjdGVkPTFcbk1lZGlhPTBcblR5cGU9MVxuQ29sb3I9RkYwMDAwXG5HYXRld2F5PTEyNC4xMjguMjAwLjEwMFxuQWRkcmVzcz0xMjUuMjQ2LjIzMC4yNDBcbk1hc2s9MjU1LjI1NS4yNTUuMFxuQWRkcmVzc0NvbW1lbnQ9XG5cbklQX0RZTj1mYWxzZVxuTEFCRUxfREhDUD0iREhDUCJcbk5PTV9SRVNFQVU9TkVUX0lOXG5MQUJFTF9OT009TmFtZVw9XG5cbkxBQkVMX0FEUkVTU0U9QWRkcmVzc1xuTEFCRUxfTUFTUVVFPU1hc2tcbkxBQkVMX1BBU1NFUkVMTEU9R2F0ZXdheVxuTEFCRUxfQkxPQz1ldGhlcm5ldFxuTElHTkVfTk9NX1JFU0VBVT1gZ3JlcCAtaSAtbiBeJExBQkVMX05PTSROT01fUkVTRUFVYFxuTElHTkVfRU5URVRFUz1gZ3JlcCAtaSAtbiAkTEFCRUxfQkxPQyAkRklDSElFUl9JUGA7CkFEUkVTU0VfSVA9MS4yLjMuNApNQVNRVUVfSVA9MjU1LjI1NS4wLjAKUEFTU0VSRUxMRV9JUD05LjEwLjExLjEyCklQX0RZTj1mYWxzZQpMQUJFTF9ESENQPSJESENQIgpWQVJfVEVNUD1gZWNobyAkQURSRVNTRV9JUCB8IGdyZXAgLWkgJyRMQUJFTF9ESENQJ2A7CmlmIFsgLW4gIiRWQVJfVEVNUCIgXQp0aGVuCiAgICBJUF9EWU49dHJ1ZQkgIAogICAgTUFTUVVFX0lQPSIiCiAgICBQQVNTRVJFTExFX0lQPSIiCmZpCk5PTV9SRVNFQVU9TkVUX0lOCkxBQkVMX05PTT1OYW1lXD0KTEFCRUxfQURSRVNTRT1BZGRyZXNzCkxBQkVMX01BU1FVRT1NYXNrCkxBQkVMX1BBU1NFUkVMTEU9R2F0ZXdheQpMQUJFTF9CTE9DPWV0aGVybmV0CgpMSUdORV9OT01fUkVTRUFVPWBncmVwIC1pIC1uIF4kTEFCRUxfTk9NJE5PTV9SRVNFQVUgJEZJQ0hJRVJfSVBgOwpOVU1fTElHTkVfUkVTRUFVPWBlY2hvICRMSUdORV9OT01fUkVTRUFVIHwgY3V0IC1kJzonIC1mMWAKTElHTkVfRU5URVRFUz1gZ3JlcCAtaSAtbiAkTEFCRUxfQkxPQyAkRklDSElFUl9JUGA7Ck5VTUVST19MSUdORT1gZWNobyAkTElHTkVfRU5URVRFUyB8IGN1dCAtZCAnICcgLWYxIHwgY3V0IC1kJzonIC1mMWAKaT0yCkRFQlVUX0JMT0M9IjAiCkZJTl9GSUNISUVSPWB3YyAtbCAkRklDSElFUl9JUCB8IGN1dCAtZCAnICcgLWYxYDsKRklOX0JMT0M9JEZJTl9GSUNISUVSCgp3aGlsZSBbIC1uICIkTlVNRVJPX0xJR05FIiBdJiYgWyAiJGkiIC1sdCAiJEZJTl9GSUNISUVSIiBdCmRvCglpZiBbIC1uICIkTElHTkVfRU5URVRFUyIgXQoJdGhlbgoJICAgIE5VTUVST19MSUdORT1gZWNobyAkTElHTkVfRU5URVRFUyB8IGN1dCAtZCAnICcgLWYkaSB8IGN1dCAtZCc6JyAtZjFgCQkKCSAgICBpZiBbIC1uICIkTlVNRVJPX0xJR05FIiBdCgkgICAgdGhlbgkKCQlpZiBbICIkTlVNRVJPX0xJR05FIiAtbHQgIiROVU1fTElHTkVfUkVTRUFVIiBdICYmIFsgIiROVU1FUk9fTElHTkUiIC1ndCAiJERFQlVUX0JMT0MiIF0gCgkJdGhlbgkJCQoJCQlERUJVVF9CTE9DPSROVU1FUk9fTElHTkUJCQkKCQlmaQoJCWlmIFsgIiROVU1FUk9fTElHTkUiIC1ndCAiJE5VTV9MSUdORV9SRVNFQVUiIF0gJiYgWyAiJE5VTUVST19MSUdORSIgLWx0ICIkRklOX0JMT0MiIF0KCQl0aGVuCgkJCUZJTl9CTE9DPSROVU1FUk9fTElHTkUKCQlmaQoJICAgIGZpCglmaQogICAgICAgIGk9JCgoICRpICsgMSkpCmRvbmUKCmVjaG8gZmluIDEKTEFCRUxfREhDUF9UPURIQ1BMZWFzZVRpbWUKTEFCRUxfRE5TPVJlcXVlc3RlRE5TCiNyZW1wbGFjZW1lbnQgZGVzIGxpZ25lcyBkYW5zIGxlIGZpY2hpZXIgZW4gZm9uY3Rpb24gZHUgY2FzCmlmIFsgIiRJUF9EWU4iID09IGZhbHNlIF0KdGhlbgplY2hvICJjZSBuJ2VzdCBwYXMgdW5lIGFkcmVzc2UgZHluIgogICBzZWQgLWkgIiRERUJVVF9CTE9DLCRGSU5fQkxPQyBzL14kTEFCRUxfTUFTUVVFLiokLy8iICRGSUNISUVSX0lQCiAgIHNlZCAtaSAiJERFQlVUX0JMT0MsJEZJTl9CTE9DIHMvXiRMQUJFTF9QQVNTRVJFTExFLiokLy8iICRGSUNISUVSX0lQCQogICBzZWQgLWkgIiRERUJVVF9CTE9DLCRGSU5fQkxPQyBzL14kTEFCRUxfQURSRVNTRT0uKiQvJExBQkVMX1BBU1NFUkVMTEVcPSRQQVNTRVJFTExFX0lQXG4kTEFCRUxfQURSRVNTRVw9JEFEUkVTU0VfSVBcbiRMQUJFTF9NQVNRVUVcPSRNQVNRVUVfSVAvIiAkRklDSElFUl9JUAogICBzZWQgLWkgIiRERUJVVF9CTE9DLCRGSU5fQkxPQyBzL14kTEFCRUxfREhDUF9ULiokLy8iICRGSUNISUVSX0lQCiAgIHNlZCAtaSAiJERFQlVUX0JMT0MsJEZJTl9CTE9DIHMvXiRMQUJFTF9ETlM9LiokLy8iICRGSUNISUVSX0lQCmVsc2UKICAgIGVjaG8gImMnZXN0IHVuZSBhZHJlc3NlIGR5biIKICAgIHNlZCAtaSAtbiAiJERFQlVUX0JMT0MsJEZJTl9CTE9DIHMvXiRMQUJFTF9ETlMuKiQvLyIgJEZJQ0hJRVJfSVAKICAgIHNlZCAtaSAtbiAiJERFQlVUX0JMT0MsJEZJTl9CTE9DIHMvXiRMQUJFTF9ESENQLiokLy8iICRGSUNISUVSX0lQCiAgICBzZWQgLWkgLW4gIiRERUJVVF9CTE9DLCRGSU5fQkxPQyBzL14kTEFCRUxfQURSRVNTRT0uKiQvJExBQkVMX0RIQ1BfVFw9MzYwMFxuJExBQkVMX0ROU1w9MFxuJExBQkVMX0FEUkVTU0VcPSRMQUJFTF9ESENQLyIgJEZJQ0hJRVJfSVAKICAgIHNlZCAtaSAtbiAiJERFQlVUX0JMT0MsJEZJTl9CTE9DIHMvXiRMQUJFTF9NQVNLLiokLy8iICRGSUNISUVSX0lQCiAgICBzZWQgLWkgLW4gIiRERUJVVF9CTE9DLCRGSU5fQkxPQyBzL14kTEFCRUxfUEFTU0VSRUxMRS4qJC8vIiAkRklDSElFUl9JUAoKZmkKZWNobyAkRklDSElFUl9JUA==
-
upload with new input
-
result: Success time: 0.04s memory: 5312 kB returned value: 0
fin 1 ce n'est pas une adresse dyn [ethernet1]nState=1nName=InternetnProtected=1nMedia=0nType=2nGateway=nAddress=125.246.235.245nMask=255.0.0.0nAddressComment=nn[ethernet2]nState=2nName=IntranProtected=1nMedia=0nType=2nColor=1564521nn[ethernet3]nState=1nName=NET_INnProtected=1nMedia=0nType=1nColor=FF0000nGateway=124.128.200.100nAddress=125.246.230.240nMask=255.255.255.0nAddressComment=nnIP_DYN=falsenLABEL_DHCP=DHCPnNOM_RESEAU=NET_INnLABEL_NOM=Name=nnLABEL_ADRESSE=AddressnLABEL_MASQUE=MasknLABEL_PASSERELLE=GatewaynLABEL_BLOC=ethernetnLIGNE_NOM_RESEAU=nLIGNE_ENTETES=
Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more information. grep: [ethernet1]nState=1nName=InternetnProtected=1nMedia=0nType=2nGateway=nAddress=125.246.235.245nMask=255.0.0.0nAddressComment=nn[ethernet2]nState=2nName=IntranProtected=1nMedia=0nType=2nColor=1564521nn[ethernet3]nState=1nName=NET_INnProtected=1nMedia=0nType=1nColor=FF0000nGateway=124.128.200.100nAddress=125.246.230.240nMask=255.255.255.0nAddressComment=nnIP_DYN=falsenLABEL_DHCP=DHCPnNOM_RESEAU=NET_INnLABEL_NOM=Name=nnLABEL_ADRESSE=AddressnLABEL_MASQUE=MasknLABEL_PASSERELLE=GatewaynLABEL_BLOC=ethernetnLIGNE_NOM_RESEAU=nLIGNE_ENTETES=: File name too long grep: [ethernet1]nState=1nName=InternetnProtected=1nMedia=0nType=2nGateway=nAddress=125.246.235.245nMask=255.0.0.0nAddressComment=nn[ethernet2]nState=2nName=IntranProtected=1nMedia=0nType=2nColor=1564521nn[ethernet3]nState=1nName=NET_INnProtected=1nMedia=0nType=1nColor=FF0000nGateway=124.128.200.100nAddress=125.246.230.240nMask=255.255.255.0nAddressComment=nnIP_DYN=falsenLABEL_DHCP=DHCPnNOM_RESEAU=NET_INnLABEL_NOM=Name=nnLABEL_ADRESSE=AddressnLABEL_MASQUE=MasknLABEL_PASSERELLE=GatewaynLABEL_BLOC=ethernetnLIGNE_NOM_RESEAU=nLIGNE_ENTETES=: File name too long wc: [ethernet1]nState=1nName=InternetnProtected=1nMedia=0nType=2nGateway=nAddress=125.246.235.245nMask=255.0.0.0nAddressComment=nn[ethernet2]nState=2nName=IntranProtected=1nMedia=0nType=2nColor=1564521nn[ethernet3]nState=1nName=NET_INnProtected=1nMedia=0nType=1nColor=FF0000nGateway=124.128.200.100nAddress=125.246.230.240nMask=255.255.255.0nAddressComment=nnIP_DYN=falsenLABEL_DHCP=DHCPnNOM_RESEAU=NET_INnLABEL_NOM=Name=nnLABEL_ADRESSE=AddressnLABEL_MASQUE=MasknLABEL_PASSERELLE=GatewaynLABEL_BLOC=ethernetnLIGNE_NOM_RESEAU=nLIGNE_ENTETES=: File name too long sed: -e expression #1, char 4: unexpected `,' sed: -e expression #1, char 4: unexpected `,' sed: -e expression #1, char 4: unexpected `,' sed: -e expression #1, char 4: unexpected `,' sed: -e expression #1, char 4: unexpected `,'



