[sh]Problème scripting
jocelyn54
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
jocelyn54 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
jocelyn54 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis débutant et j'ai essayé de réaliser un script pour générer un fichier compatible pour une importation sur zabbix seulement il ne fait pas exactement ce que je souhaite.
Je vais commencer par vous le montrer (enfin ce qui est utile) puis je dirai les problèmes rencontrés:
Bon, le script fonctionne et va récupérer les données comme il faut. Le but de cette partie est de supprimer la casse et l'accentuation après avoir récupéré l'info dans tel ou tel champ. Le problème est que quand le script récupère Rennes par exemple, il retournera agence_renes. Ainsi, les doublons "nn", "ll", etc. sont transformés en lettres simples. Je ne comprends pas pourquoi... Je suppose que c'est dans le tr qu'il y a une erreure mais je n'arrive pas à la trouver.
Ensuite, je souhaite ne faire une certaine opération que si la chaîne "reseau 3" se trouve dans le champ 33.
Je pensais faire quelquechose dans le genre mais cela ne fonctionne pas... Erreur de syntax. Pouvez vous m'aider?
Merci d'avance
Je suis débutant et j'ai essayé de réaliser un script pour générer un fichier compatible pour une importation sur zabbix seulement il ne fait pas exactement ce que je souhaite.
Je vais commencer par vous le montrer (enfin ce qui est utile) puis je dirai les problèmes rencontrés:
#recuperation de l'agence var1="agence_""$(echo $entree | cut -d';' -f10 | sed 's/\"//g' | tr -s A-Z a-z)" agence=`echo $var1 | sed 'y/àâçéèêëîïôöùüÂÀÇÉÈÊËÎÏÔÖÙÜ/aaceeeeiioouuaaceeeeiioouu/'` #recuperation de la region region="region_""$(echo $entree | cut -d';' -f11 | sed 's/\"//g' | tr -s A-Z a-z)"
Bon, le script fonctionne et va récupérer les données comme il faut. Le but de cette partie est de supprimer la casse et l'accentuation après avoir récupéré l'info dans tel ou tel champ. Le problème est que quand le script récupère Rennes par exemple, il retournera agence_renes. Ainsi, les doublons "nn", "ll", etc. sont transformés en lettres simples. Je ne comprends pas pourquoi... Je suppose que c'est dans le tr qu'il y a une erreure mais je n'arrive pas à la trouver.
Ensuite, je souhaite ne faire une certaine opération que si la chaîne "reseau 3" se trouve dans le champ 33.
Je pensais faire quelquechose dans le genre mais cela ne fonctionne pas... Erreur de syntax. Pouvez vous m'aider?
grep -i "reseau 3" $(echo $entree | cut -d';' -f33 | sed 's/\"//g') if [ "$?" = "0" ]
Merci d'avance
A voir également:
- [sh]Problème scripting
- Sh addition ✓ - Forum Shell
- Executer .sh - Forum Linux / Unix
- Tsstcorp cddvdw sh-s223c - Forum Matériel & Système
- Sh do while ✓ - Forum Shell
- Sh pause ✓ - Forum Shell
3 réponses
Bon, j'ai un peu craqué pour le coup des doubles lettres qui disparaissent... C'était à cause du -s.
Par contre, pourriez vous m'aider sur la syntax avec le grep que j'ai écrit plus haut?
Par contre, pourriez vous m'aider sur la syntax avec le grep que j'ai écrit plus haut?