Eu tenho uma pasta com centenas de arquivos. Esses arquivos são arquivos de pontuação para 26 variáveis ambientais em 510 arquivos de genótipos. Por exemplo, nos exemplos abaixo, _s2. é a segunda variável de ambiente, _s3. é a terceira variável ambiental, etc. _9_ indica que isso é para o 9º arquivo de genótipo.
lfmm_run2_9_s2.3.zscore
lfmm_run2_9_s24.3.zscore
lfmm_run2_9_s25.3.zscore
lfmm_run2_9_s26.3.zscore
lfmm_run2_9_s3.3.zscore
lfmm_run2_9_s4.3.zscore
lfmm_run2_9_s5.3.zscore
lfmm_run2_9_s6.3.zscore
lfmm_run2_9_s7.3.zscore
lfmm_run2_9_s8.3.zscore
lfmm_run2_9_s9.3.zscore
...
Eu quero combinar os arquivos de genótipo para cada variável ambiental. o que estou fazendo é
cat lfmm_run2_{1..510}_s1.3.zscore > env1
cat lfmm_run2_{1..510}_s2.3.zscore > env2
cat lfmm_run2_{1..510}_s3.3.zscore > env3
Mas leva muito tempo para fazer isso para todas as 26 variáveis ambientais, uma por uma. Existe alguma maneira mais rápida de fazer isso tudo junto por um único comando?
Use um
for
loop para executarcat
26 vezes, uma para cada número de 1 a 26: