Commande sed -i -e
dolidole
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je veux exécuté un script en Shell pour remplacer des points des adresses IP par des tirés comme suites :
"192.168.1.1 -------> 192-168-1-1 " et en suite l'affecter un un dossier j'ai réussi a mettre la commande >> sed -i -e "s/\.\.*/-/" nom_de_fichier <<ça me sépare l'adresses pas des tirés mnt mon souci c'est que je dois les stockées dans un autres fichier !Si y'a une personne qui peux m'aider Merci d'avance
je veux exécuté un script en Shell pour remplacer des points des adresses IP par des tirés comme suites :
"192.168.1.1 -------> 192-168-1-1 " et en suite l'affecter un un dossier j'ai réussi a mettre la commande >> sed -i -e "s/\.\.*/-/" nom_de_fichier <<ça me sépare l'adresses pas des tirés mnt mon souci c'est que je dois les stockées dans un autres fichier !Si y'a une personne qui peux m'aider Merci d'avance
A voir également:
- Commande sed -i -e
- Invite de commande - Guide
- Commande terminal mac - Guide
- É majuscule - Guide
- I showkeyplus - Télécharger - Utilitaires
- Commande dism - Guide
2 réponses
Salut,
sed -i -e "s/\.\.*/-/" nom_de_fichier <<ça me sépare l'adresses pas des tirés
Ça ça m'étonnerait ;-((
Ça remplace juste le 1er point, et la syntaxe n'est pas la bonne.
La preuve :
Essaie plutôt comme ça :
mnt mon souci c'est que je dois les stockées dans un autres fichier
Il suffit de rediriger vers un nouveau fichier (l'option "-i" est inutile) :
sed -i -e "s/\.\.*/-/" nom_de_fichier <<ça me sépare l'adresses pas des tirés
Ça ça m'étonnerait ;-((
Ça remplace juste le 1er point, et la syntaxe n'est pas la bonne.
La preuve :
$ echo "192.168.1.1" | sed 's/\.\.*/-/' 192-168.1.1
Essaie plutôt comme ça :
$ echo "192.168.1.1" | sed 's/\./-/g' 192-168-1-1
mnt mon souci c'est que je dois les stockées dans un autres fichier
Il suffit de rediriger vers un nouveau fichier (l'option "-i" est inutile) :
sed 's/\./-/g' fichier > nouveau_fichier
Merci Zipe ! ça marche ! j'ai un autre souci je suis débutant en Shell ! en faite je veux réaliser un script en Shell qui me scan mon réseau local tout en respectant quelques parametre mnt je veux insérer la valeur en IP avec - devant host_name sur la même ligne et encore une fois a la place display_name ! mon script de test si joint :
#!/bin/bash
#hosts="/srv/eyesofnetwork/nagios/etc/objects/hosts.cfg"
hosts="hosts.cfg"
J="J.txt"
# rm -f testtest
echo > $hosts
#nmap -sP 192.168.1.0/24 | awk '{print $2}' | grep 192 > discov-hosts
echo "192.168.1.112" > discovhosts
for i in $(cat discovhosts);
do
sed "s/\./-/g" discovhosts > J
echo "define host {" >> $hosts;
echo " host_name $J
check_command check-host-alive!$i
max_check_attempts 2
check_interval 4
passive_checks_enabled 1
check_period 24x7
obsess_over_host 0
check_freshness 0
freshness_threshold 0
active_checks_enabled 1
notification_interval 0
notification_period 24x7
notifications_enabled 5
failure_prediction_enabled 1
action_url /module/capacity_for_nagios/index.php?ip=$HOSTNAME$
icon_image windowsxp.png
vrml_image windowsxp.png
statusmap_image windowsxp.png
alias WINDOWS 7
display_name HOSTER-PC
initial_state o" >> $hosts;
echo " address $i" >> $hosts;
echo " flap_detection_enabled 1
process_perf_data 1
retain_status_information 1
retain_nonstatus_information 1
notification_options d,u,r
stalking_options d,u
flap_detection_options o,d,u
contact_groups admins
hostgroups WINDOWS
}" >> $hosts;
echo -e "\n" >> $hosts;
done
>>> Je me retrouve perdu entre les lignes :S <<<<<<
#!/bin/bash
#hosts="/srv/eyesofnetwork/nagios/etc/objects/hosts.cfg"
hosts="hosts.cfg"
J="J.txt"
# rm -f testtest
echo > $hosts
#nmap -sP 192.168.1.0/24 | awk '{print $2}' | grep 192 > discov-hosts
echo "192.168.1.112" > discovhosts
for i in $(cat discovhosts);
do
sed "s/\./-/g" discovhosts > J
echo "define host {" >> $hosts;
echo " host_name $J
check_command check-host-alive!$i
max_check_attempts 2
check_interval 4
passive_checks_enabled 1
check_period 24x7
obsess_over_host 0
check_freshness 0
freshness_threshold 0
active_checks_enabled 1
notification_interval 0
notification_period 24x7
notifications_enabled 5
failure_prediction_enabled 1
action_url /module/capacity_for_nagios/index.php?ip=$HOSTNAME$
icon_image windowsxp.png
vrml_image windowsxp.png
statusmap_image windowsxp.png
alias WINDOWS 7
display_name HOSTER-PC
initial_state o" >> $hosts;
echo " address $i" >> $hosts;
echo " flap_detection_enabled 1
process_perf_data 1
retain_status_information 1
retain_nonstatus_information 1
notification_options d,u,r
stalking_options d,u
flap_detection_options o,d,u
contact_groups admins
hostgroups WINDOWS
}" >> $hosts;
echo -e "\n" >> $hosts;
done
>>> Je me retrouve perdu entre les lignes :S <<<<<<