- 20, Oct 2024
- #1
У меня есть два файла:
файл1 (поиск):
awk 'NR==FNR{a[$1]++;next} !($1 in a) {print $1} {next}' file2 file1
файл2 (шаблоны):
awk 'FN==NR {exclude[$0];next} !($0 in exclude)' file2 file1
Что мне нужно:
1
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGTTTTTTTTT
2
3
4
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCCGTCCGTAG
Это значит, что мне нужен скрипт, который ищет мои строки поиска в файле шаблонов, и если строки поиска можно найти полностью или частично (как для строки после "2"), то их не надо писать, а все остальные строки файла 1.
Я попробовал множество скриптов grep и awk, найденных на этом форуме, но ни один из них не дал того, что мне нужно, например.
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGC
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGCG
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGCGTCC
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGCGTCCGTAG
или
1
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGTTTTTTTTT
2
GACGGAGGATGCAAGTGTTATCCGGAAT
3
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCGTAAAGCGTCC
4
GACGGAGGATGCAAGTGTTATCCGGAATCACTGGGCCGTCCGTAG
Я также попробовал grep.
В любом случае, все опробованные скрипты просто находят полностью совпадающие шаблоны, а не частично совпадающие...
Есть у кого-нибудь идеи??
#awk #grep #биоинформатика #сравнение файлов #сопоставление с образцом