#!/usr/bin/perl -w use strict; use warnings; my $proteins_fasta; my $selenoproteineshuma; #fitxer selenoproteïnes humà my $selenoproteineshuma_definitiu; #fitxer selenoproteines definitiu my $new_dir; my $protein; print "How do you want to name the new dir?:\n"; $new_dir = ; chomp $new_dir; print "please, insert fasta file with all the proteins\n"; $proteins_fasta = ; chomp $proteins_fasta; #print "$new_dir\n"; #print "$protein_fasta\n"; mkdir "$new_dir"; open(FASTA, "$proteins_fasta.fa") || die("can't open $proteins_fasta.fa\n"); #si no pot obrir el fitxer multifasta ho mostra my $i = 0; while() { $i = $i + 1; my @vector = split(//,$_); if ($vector[0] eq '>' && $i == 1) { #per la primera proteina es crea el primer fitxer my @nomfitxer = split(/_/, $_); #el nom de fitxer serà el nom de la proteïna fins _ @nomfitxer = split(/>/,$nomfitxer[0]); #eliminar el signe > situat al davant el nom my $def_nom = $nomfitxer[1]; mkdir "$new_dir/$def_nom"; #crear carpeta amb el nom de la proteïna open($protein, '>', "$new_dir/$def_nom/$def_nom.fa"); } if ($vector[0] eq '>' && $i != 1) { #creació de fitxers per cada proteïna close($protein); my @nomfitxer = split(/_/, $_); @nomfitxer = split(/>/,$nomfitxer[0]); my $def_nom = $nomfitxer[1]; mkdir "$new_dir/$def_nom"; open($protein, '>', "$new_dir/$def_nom/$def_nom.fa"); } print {$protein} $_; } close($protein);