Désolé, si cela à verbeux, mais j'ai un script Perl qui fonctionne en partie. J'ai une expression régulière qui extrait foo|bar
et un préfixe sur une chaîne donnée. Mais le problème est que mes chaînes sont aussi des noms de fichiers que je veux aussi ouvrir et récupérer son contenu comme locale_col.dat.2010120813.png
(voir Sortie attendue ci-dessous).aider à extraire les deux contenus d'un fichier et les valeurs du même nom de fichier en utilisant perl
La sortie ressemble maintenant à ceci:
Content:/home/myhome/col/[email protected]
Key1:foo:Key2:col
Content:/home/myhome/col/.my_file_del.dp1.bar.net
Key1:bar:Key2:col
Content:/home/myhome/jab/[email protected]
Key1:foo:Key2:jab
Content:/home/myhome/jab/.my_file_del.dp1.bar.net
Key1:bar:Key2:jab
je besoin d'aide pour peaufiner cela pour que dans un seul passage, je peux lire la liste des chaînes (noms de fichiers de filelist.txt), extraire des valeurs particulières du fichier nommez le chemin (en utilisant regex) et ouvrez le nom du fichier pour son contenu. J'espère que cela a du sens ou est-ce que je cherche à briser cela en 2 scripts Perl? Merci pour votre contribution.
Code (WIP):
open FILE, "< /home/myname/FileList.txt";
while (<FILE>) {
my $line = $_;
chomp($line);
print "Content:$_"; #This is just printing the filenames.
#I want to get the contents of those file names instead. Stuck here.
if ($line =~ m/home\/myname\/(\w{3}).*[.](\w+)[.].*/){
print "Key1:$2:Key2:$1\n";
}
}
close FILE;
Contenu de filelist.txt:
/home/myname/col/[email protected]
/home/myname/col/.my_file_del.dp1.bar.net
/home/myname/jab/[email protected]
/home/myname/jab/.my_file_del.dp1.bar.net
contenu Exemple de l'un des fichiers répertoriés: (que je besoin d'aide ici pour extraire)
$ cat [email protected]
locale_col.dat.2010120813.png
Sortie attendue:
Content:locale_col.dat.2010120813.png
Key1:foo:Key2:col
...
..
+1 pour 'TOUJOURS ces 2 lignes' –
@goreSplatter: Merci vous, c'est vraiment une bonne pratique !! –
@bourbaki - merci. J'essaie ceci, bien que j'empêche d'utiliser la poignée de fichier "FILE". est-ce que mon $ FILE doit être déclaré? – cjd143SD