/ Arquivo de entrada / Perl dinamicamente [duplicado] - perl, entrada

Arquivo de entrada Perl dinamicamente [duplicado] - perl, entrada

Eu preciso inserir uma variável nessa linha para processar muitos arquivos dinamicamente:

open (INFILE, "< your_input.fa")

Eu não sei como fazer isso usando Perl. Eu normalmente usaria comandos bash de maneira similar:

NAME1=$PWD
NAME=$(basename "$NAME1")

bwa mem $NAME.fastq.gz

Informação adicional:

Os nomes dos arquivos variam nos primeiros 6 caracteres, mas têm sufixos regulares:

xx-nnn_regular.txt

Os arquivos estão localizados nos diretórios nomeados após os seis primeiros caracteres:

xx-nnn > xx-nnn_regular.txt

Eu olhei no manual Perl, mas eu não tenho um fundo de programação, alguém por favor me ajude?

Como faço para executar um script Perl em vários arquivos de entrada com a mesma extensão? Eu usei a informação aqui para responder minha pergunta - obrigado!

Respostas:

0 para resposta № 1

Quando eu estava convertendo um arquivo fq em um arquivo fa euteria que abrir um arquivo dinâmico para escrever. Eu tinha o arquivo que eu estava tentando converter como um argumento de linha de comando e, portanto, o código responsável era assim.

 my $directory = "output";
if ($ARGV[0] =~ /^(S*).fq/) {
$location = $1;
}
open (OUTPUT, ">$directory/$location.fa");

Você pode apenas utilizar variáveis ​​dentro da abertura do seu arquivo.

Esse código deve abrir arquivos dinamicamente para você, mas a maneira como você insere os arquivos será, sem dúvida, diferente da minha solução.

Espero que isto ajude.