Увеличение размера корневого раздела в Ubuntu 20.04

#!/usr/bin/perl

use strict;

my $f1=shift;
open(F1,"<",$f1) || die "Couldn't open $f1: $!\n";

my $f2=shift;
open(F2,"<",$f2) || die "Couldn't open $f2: $!\n";

until (eof(F1) || eof(F2)) {
  my @a = split /\t/,<F1>;
  my @b = split /\t/,<F2>;
  chomp($a[@a-1]);

  # note: perl arrays start from 0, not 1
  print join("\t",@a, @b) if (($a[1] >= $b[3]) && ($a[2] <= $b[4]));
}

Это открывает два аргумента имени файла, поскольку файл -обрабатывает F1и F2соответственно. Если какой-либо файл не открывается, он завершается с сообщением об ошибке.

Затем, пока ни один из них не достиг EOF (конца -файла -), он:

  • считывает строку за раз из каждого дескриптора файла -в отдельные массивы(@aдля F1 и @bдля F2 ).

    Функция chomp()удаляет завершающий символ новой строки(\n)из последнего элемента массива @a, чтобы предотвратить появление новой строки в середине любых выходных строк, где массивы соединяются.

  • Если массивы соответствуют вашим критериям ($a[1]>=$b[3] и $a[2]<=$b[4] ), он печатает оба массива как одну строку вывода., соединенные табуляцией в качестве разделителей полей.

Сохранить как, например. ibk.pl, сделайте его исполняемым с помощью chmod +x ibk.plи запустите как:

$./ibk.pl file1 file2 
NC_025345       11996   12085   KX932454.2      NC_025345.1     RefSeq  gene    10337   16933  .       +      .       ID=gene-NZ82_gp6;Dbxref=GeneID:20964336;Name=NZ82_gp6;gbkey=Gene;gene_biotype=protein_coding;locus_tag=NZ82_gp6
0
29.11.2021, 08:52
1 ответ

Это необходимо с LiveCD, смонтированная файловая система не может быть перемещена (ее размер можно изменить, но только "вправо" изменение размера "влево" означает копирование данных, и это невозможно сделать, когда устройство установлен ).

Итак, загрузитесь с Ubuntu LiveCD и с помощью GParted Раздел → Изменить размер/перемещение переместите и измените размер корневого раздела на свободное место.

Как и при любых других операциях с хранилищем, настоятельно рекомендуется сначала сделать резервную копию. Если что-то пойдет не так во время операции изменения размера/перемещения (, например сбой питания ), вы можете потерять данные.

2
29.11.2021, 10:10

Теги

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