Если вы хотите использовать мультиархитектурный подход для прозрачной эмуляции с помощью QEMU, вам нужно найти дистрибутив, который поддерживает все интересующие вас архитектуры, (вашу родную архитектуру и напрямую -поддерживаемую альтернативную архитектуру, которую вы хотите, и архитектуры, которые вы хотите эмулировать ). Вы не можете смешивать и сочетать дистрибутивы (. Raspbian для armhf
и Debian для i386
), поскольку мультиархитектура требует, чтобы пакеты, установленные для нескольких архитектур, устанавливались с точно одной и той же версией на всех архитектурах.
Переключение на другой дистрибутив облегчило бы эту задачу (при условии, что сам дистрибутив хорошо подходит для вашей Raspberry ), но может быть и другое решение — должна быть возможность использовать debootstrap
для установки другого дистрибутива с чужую архитектуру в chroot на вашей малине и использовать ее для запуска двоичных файлов... Я использовал прозрачную эмуляцию с мультиархитектурой и чужие архитектуры с debootstrap
, так что я знаю, что различные компоненты работают, но я никогда не пробовал объединив их так, чтобы это оставалось упражнением для читателя.
Если у вас три или более a
, вы можете использовать:a{3,}
. Например:
$ echo a | grep -E 'a{3,}'
$ echo aa | grep -E 'a{3,}'
$ echo aaa | grep -E 'a{3,}'
aaa
$ echo aaaa | grep -E 'a{3,}'
aaaa
$ echo aaaaaaaaaa | grep -E 'a{3,}'
aaaaaaaaaa
Если вы хотите, чтобы 3 или более a
сопровождались чем-то, что не является t
, вы можете использовать a{3,}[^t]
. Например:
$ echo aaa | grep -E 'a{3,}[^t]'
$ echo aaat | grep -E 'a{3,}[^t]'
$ echo aaax | grep -E 'a{3,}[^t]'
aaax
Обратите внимание, однако, что a
не является t
, так что это будет соответствовать чему-то вроде 'aaaa'; за первыми тремя a
следует символ, который в данном случае не является t
(,a
).
$ echo aaaa | grep -E 'a{3,}[^t]'
aaaa
Если вы хотите, чтобы строка заканчивалась чем-то, что не является ни a
, ни t
, вы можете использовать:a{3,}[^at]
. Например:
$ echo aaaa | grep -E 'a{3,}[^ta]'
$ echo aaaaaaaa | grep -E 'a{3,}[^ta]'
$ echo aaaaaaaattt | grep -E 'a{3,}[^ta]'
$ echo aaaaaaaab | grep -E 'a{3,}[^ta]'
aaaaaaaab
Чтобы распечатать количество последовательностей из трех или более A
с, попробуйте
awk '{print gsub (/AAAA*/, "&")}' file
3
4
4
1
Для второго запроса адаптируйте выше, например
awk '{print gsub (/AAAAA*[CG]/, "&")}' file
"за которым следует A" уже покрывается шаблоном A *.
from a fastq file how many reads have 3 or MORE As in a row
Так как это файл в формате fastq, для точного подсчета вам нужно просмотреть только фактические строки последовательности, а не все строки. Вы можете сделать это, используя переменную NR
, чтобы ограничить совпадения только второй строкой каждого блока последовательности из 4 -строк :
awk 'NR%4 == 2 && /AAA/ { count++ } END { print count+0 }' foo.fastq
How many reads have a run of 4 or more As followed by something other than a T? (G C or A)
awk 'NR%4 == 2 && /AAAA([^T]|$)/ { count++ } END { print count+0 }' foo.fastq
(Обратите внимание, что это будет соответствовать AAAAAT
, потому что у него есть 4 A, за которыми следует еще один A)