Я пытался использовать объединение двух файлов, которые у меня есть, в определенном столбце для каждого файла (18-й для файла A, 1-й для файла B), и он говорит мне, что файлы не отсортированы.Я использовал команду sort для этих файлов и не могу понять, что происходит.
Я попытался использовать следующие команды и получил тот же результат (а именно: «файл не отсортирован»):
join -1 18 -2 1 <(perl -p -e s'/"//'g fileA|sort -k 18) <(sort -k 1 fileB)|less
join -1 18 -2 1 <(perl -p -e s'/"//'g fileA|sort -n -k 18) <(sort -n -k 1 fileB)|less
join -1 18 -2 1 <(perl -p -e s'/"//'g fileA|sort -V -k 18) <(sort -V -k 1 fileB)|less
Типичная строка файла выглядит так:
chr8 848289 852184 a 0 + chr8 StringTie transcript 848290 852184 3895 + . gene_id Genome.106729; transcript_id Genome.106729.1; reference_id refGenome_T001.mrna1; ref_gene_id refGenome_T001.path1; ref_gene_name refGenome_T001; cov 342.423218; FPKM 8.291647; TPM 12.997114; 3895
Типичная строка fileB выглядит следующим образом:
Genome.106729.1 2078
Я понял, что файлы должны быть отсортированы по столбцу, используемому в объединении, но, похоже, он не работает.Может кто-нибудь помочь мне?
С наилучшими пожеланиями
Я выяснил, что происходит.Команда была в порядке, за исключением того, что у меня не было места для создания файлов в моей папке, и в начале одного из моих файлов была пустая строка.Я думаю, что недоступное пространство сделало так, чтобы сортировка не могла создать что-либо в памяти, что вызвало ошибку.