[sed, awk, tr, cut...] j'ai besoins d'un coup de pouce

cymcy : oui, et l’install est passée sans accrocs :slight_smile:

myocastor => comment fais tu par exemple pour isoler PLUSIEURS sous chaines identiques dans une chaine. Tu l’as fais essentiellement lorsqu’il s’agit d’une occurence, mais quand il y a plusieurs sous chaines, comment faire ?

par exemple

titi<td>toto<td> => <td><td>

en fait en realité, dans une ligne, j’aimerais recuperer les les adresses

var="<tr><td class="newart" width=50%><a class=alb href="/artist/1000/H-Blockx/">H-Blockx</a></td><td class="newspace"> </td><td class="newart" width=50%><a class=alb href="/artist/1002/Herb_Alpert/">Herb Alpert</a></td><td class="newspace"> </td></tr><tr><td class="newart" width=50%><a class=alb href="/artist/1001/Hacker/">Hacker</a></td>

"
echo $bar me renverrait hhref="/artist/1000/H-Blockx/" href="/artist/1002/Herb_Alpert/" href="/artist/1001/Hacker/"

arf je suis deg thecastor ne traine plus depuis le 1er avril cette année. Je vais pas avoir de reponse de sa part

arf … je suis passé au perl ,

ce qui donnerait :


#!/usr/bin/perl


$var="<tr><td class=\"newart\" width=50%><a class=alb href=\"/artist/1000/H-Blockx/\">H-Blockx</a></td><td class=\"newspace\"> </td><td class=\"newart\" width=50%><a class=alb href=\"/artist/1002/Herb_Alpert/\">Herb Alpert</a></td><td class=\"newspace\"> </td></tr><tr><td class=\"newart\" width=50%><a class=alb href=\"/artist/1001/Hacker/\">Hacker</a></td>";


while ( $var =~ /(.*)(href=[^>]*)(.*)/gi ) {
	
	print "$2 ";
	$var = $1 . $3;
	
	}
	
print "\n"; 

bon en bash …


#!/bin/sh

var="<tr><td class=\"newart\" width=50%><a class=alb href=\"/artist/1000/H-Blockx/\">H-Blockx</a></td><td class=\"newspace\"> </td><td class=\"newart\" width=50%><a class=alb href=\"/artist/1002/Herb_Alpert/\">Herb Alpert</a></td><td class=\"newspace\"> </td></tr><tr><td class=\"newart\" width=50%><a class=alb href=\"/artist/1001/Hacker/\">Hacker</a></td>" 

i=1

while [ $i -ne 0 ] ;  do
toto=`echo $var | sed "s/\(.*\)\(href=[^>]*\)\(.*\)/\1\3/" `
titi=`echo $var | sed "s/\(.*\)\(href=[^>]*\)\(.*\)/\2/" `
if [ "$toto" = "$titi" ]; then
i=0
else
echo $titi
fi
var="$toto"
done