Хотите узнать, какие папки НЕ следует копировать в Arch Linux

awk решение:

Предполагая тестовый фрагмент из файла batch_1.catalog.tags.tsv:

0   1   6   gi|586799556|ref|NW_006530744.1|    141 +   consensus   0   1_33,14_43  CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC    0   0   0   0
1   2   7   hi|686711556|ref|NW_006530744.2|    141 +   consensus   0   1_33,14_43  CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC    1   1   0   1
2   2   8   hi|686711556|ref|NW_006530744.2|    141 +   consensus   0   1_33,14_43  CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC    1   1   1   1
3   3   9   th|776711556|ref|NW_006530744.2|    141 +   consensus   1   1_33,14_43  CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC    1   0   1   1

И тестовый фрагмент из whitelight.txt файл:

6
7
9

Команда:

awk 'NR==FNR{ a[$0]++; next }{ if ($3 in a) { 
     $0=">"$3 FS $4 FS $5 FS $6 FS $11 FS $12 FS $13 FS $14 RS $10; print}}' whitelist.txt batch_1.catalog.tags.tsv > cat.fa

Final cat.fa содержимое:

>6 gi|586799556|ref|NW_006530744.1| 141 + 0 0 0 0
CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC
>7 hi|686711556|ref|NW_006530744.2| 141 + 1 1 0 1
CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC
>9 th|776711556|ref|NW_006530744.2| 141 + 1 0 1 1
CGGGCGGTGGTGGCGCACGCCTTTAATCCCAGCACTTGGGAGGCAGAGGCAGGTGGATCTTTGTGAGTTCGAGGCCAGCCTGGGCTACCAAGTGAGCTCC

Details :

NR==FNR - выполнить действие для первого файла, т.е. whitelight.txt

a[$0]++; - накопление чисел из файла whitelight.txt

if ($3 в a) — разрешает действие, если значение 3-го столбца из 2-го файла совпадает с любым из накопленных чисел

RS — разделитель записей awk, по умолчанию используется символ новой строки

1
16.10.2016, 15:30
1 ответ

Хотя это не сломает систему, вы, вероятно, захотите исключить /var/lib/pacman/sync, где pacman хранит локально кэшированные копии индексов репозитория, которые легко регенерировать. Если вы планируете создавать резервные копии только пользовательских данных, а не всей системы, то вам абсолютно необходимо исключить /var/lib/pacman/local, так как в ней хранится локальная база данных о том, что установлено, а что нет (. кирпичный пакман ). Это единственные два, которые я знаю, которые специфичны для Arch, но могут быть и другие, и у вас, вероятно, будут другие, в зависимости от того, какое программное обеспечение установлено. В несколько более общем замечании, многие люди, которых я знаю, выступают за то, чтобы не включать /var/log, чтобы вы не испортили свои системные журналы при восстановлении данных, и /var/spool, чтобы вы случайно не -долго стояли в очереди. -просроченные задания на печать или электронные письма -.

Кроме того, хотя это и не относится к Arch, вы можете безопасно исключить /tmp, /var/tmp, /var/cache/*/*и /home/*/.cacheиз резервных копий практически в любой системе Linux, поскольку все они должны содержать только данные, приложения могут работать без или восстанавливать себя.

1
28.01.2020, 01:09

Теги

Похожие вопросы