###### CANVIAR LES U PER X ######
print "Executem un canvi de U per X en les proteines\n";

my $dirname = './selenoproteines'; #Li donem un Path al dirname
opendir(DIR, $dirname) or die "Could not open $dirname\n"; #Al obrir el dirname, estem obrint la carpeta del nostre Path, dins de la qual tenim els documents amb els que volem treballar

while (my $protein = readdir(DIR)) #buscar les linies que no comencin amb > i canviar U per X i % i # per res
{
  #print "$protein\n";
  next if $protein =~ /^\./;
  open (FILE, "$dirname/$protein/$protein.fa") || die ("can't open $protein"); #Aqui asignem la variable global filename als documents de dins de la carpeta i els obrim
  while (<FILE>)
  {
    my @vector = split(//,$_); # Es fa un vector de cada linia, separant per lletres. 
    if ($vector[0] eq ">") # Estarem a la primera linia del document i ho aprofitarem per donar el nom al nou document que generem
    {
	  open (OUTPUT, ">", "$dirname/$protein/$protein.U_X.fa");
      print OUTPUT $_;
    } 
 # Emmagatzemar cada linia en questio en el vector
    if ($vector[0] ne ">") # Entrarem en aquest if quan no estiguem a la primera linia del doc, per tant, quan ja estem llegint la sequencia de la proteina. Aqui es on volem canviar les U.
    { 
       #print $_;      
       my $linia = $_;
       $linia =~ s/U/X/; # Si ens trobem una U la canviem per una X
       $linia =~ s/%//; # Si ens trobem un %, el borrem
       $linia =~ s/%%//;# Aixo ho fem perque vam veure que dos % seguits no els borrava (no sabem si funcionara, CAL REVISAR)
       $linia =~ s/@//;# Si ens trobem una arrova, la borrem
       $linia =~ s/#//;# Si ens trobem una almoadilla, la borrem
       print OUTPUT "$linia";
	 }
#AQUI FALTA OPEN OUTPUT PER POSAR EL RESULTAT DEL CANVI A UN FITXER
  }
  close OUTPUT; # Tenquem el fitxer, per poder-ne obrir un altre
}
closedir(DIR);

print "Ta to canviao\n";
