Question
jouer avec les fichiers
- Albert
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 38
- Remerciements reçus 0
Je cherche à extraire des adresses ip depuis un fichier texte et à les lister dans un second (faut que je vérifie leur enregistrement dns aussi mais ca on verra après)
ducoup j'ai tenté de faire une boucle sur get content pour chaque string qui commence par \"172.\" mais ca marche bof :
J'ai testé plusieurs choses mais ca passe pas, quelqu'un a une piste ?$s1 = \"172.\"
foreach ( $s1 in get-content C:\Documents and Settings\g.albert\Mes documents\dns1.txt)
{$_.Substring(12)>extrait_ip.txt}
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
- Hors Ligne
- Membre elite
- Messages : 248
- Remerciements reçus 1
mais sinon:
[code:1]
# s1 = \"172.\" -> je vois pas a quoi ca sert
foreach ( $s1 in (get-content C:\Documents and Settings\g.albert\Mes documents\dns1.txt))
{$_.Substring(12)>extrait_ip.txt}
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Albert
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 38
- Remerciements reçus 0
18/11/2011 10:06:23 0654 PACKET 00000000032000C0 UDP Rcv 172.21.1.10 c5e0 Q [0001 D NOERROR] A (7)toracle(6)gnancy(5)local(0)
18/11/2011 10:06:23 0654 PACKET 00000000032000C0 UDP Snd 172.21.1.10 c5e0 R Q [8081 DR NOERROR] A (7)toracle(6)gnancy(5)local(0)
Donc en gros je veux extraire l'adresse ip et ensuite je veux faire un nslookup pour savoir à quel enregistrement elle correspond (dans le but d'une purge du serv dns)
J'ai tenté autre chose :
[code:1]$fichier = get-content C:\Documents and Settings\g.albert\Mes documents\dns1.txt
for ($i=0; $i -lt $fichier.length; $i++){
if($fichier[$i] -match \"172.\"«»)
{$fichier[$i]>extrait_ipdns1.txt}
}[/code:1]
Mais j'ai el droit à un \"Impossible de trouver un paramètre positionnel acceptant l'argumant <<and>>\" donc je suppose que c'est el and du nom de fichier alors je l'ai mis à la racine et la il me dit impossible de trouver le chemin d'accès ...<br><br>Message édité par: FlqX, à: 24/11/11 13:09
Connexion ou Créer un compte pour participer à la conversation.
- Olivier
- Hors Ligne
- Membre elite
- Messages : 182
- Remerciements reçus 0
Je pense que ce lien te sera de très grande utilité
DnsShell
Parru sur PowerShell-Scripting.com ICI
Tout de bon et à +
Olivier D.
Virtual Business Card
Profile Linkedin
Connexion ou Créer un compte pour participer à la conversation.
- Albert
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 38
- Remerciements reçus 0
Je m'en suis sortie quand même, merci.
Connexion ou Créer un compte pour participer à la conversation.
- Richard Lazaro
- Hors Ligne
- Membre platinium
- Messages : 530
- Remerciements reçus 0
Nous pouvons passer via les expressions régulière :
Get-Content -Path $path | ForEach { if($_ -match '(?<IP>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})') { Write-Output $matches.IP } }
Je l'ai pas testé mais cela doit être bon :]
Bien Cordialement,
Richard Lazaro.
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- jouer avec les fichiers