Как исправить неработающий пакет в Debian?

paste вставляет символы табуляции между содержимым вставленных файлов. Мы можем использовать это, чтобы проанализировать результат в awkи распечатать столбцы с пользовательским форматированием printf.

Вертикальные символы в выходных данных ниже служат только для украшения.

По правому краю -по ширине 25+5 символов:

$ paste file1 file2 | awk -F '\t' '{ printf("|%25s|%5s|\n", $1, $2) }'
|                    small|    A|
|     incredibly humungous|    B|

По левому краю -по ширине 25+5 символов:

$ paste file1 file2 | awk -F '\t' '{ printf("|%-25s|%-5s|\n", $1, $2) }'
|small                    |A    |
|incredibly humungous     |B    |

Слишком короткий первый столбец слева -по ширине 5+5 символов:

$ paste file1 file2 | awk -F '\t' '{ printf("|%-5s|%-5s|\n", $1, $2) }'
|small|A    |
|incredibly humungous|B    |

Слишком короткий первый столбец с усечением данных слева -по ширине 5+5 символов:

$ paste file1 file2 | awk -F '\t' '{ printf("|%-5.5s|%-5s|\n", $1, $2) }'
|small|A    |
|incre|B    |

Определение самой длинной строки в file1и file2и использование ее в качестве ширины поля в вызове printf():

$ paste file1 file2 | awk -F '\t' -v len=$( awk -F '\t' 'length > m { m = length } END { print m }' file1 file2 ) '{ printf("|%*s|%*s|\n", len, $1, len, $2 ) }'
|               small|                   A|
|incredibly humungous|                   B|

То же самое, но отдельно для двух столбцов:

$ longest_line() { awk -F '\t' 'length > m { m = length } END { print m }' "$1"; }
$ paste file1 file2 | awk -F '\t' -v len1=$( longest_line file1 ) -v len2=$( longest_line file2 ) '{ printf("|%*s|%*s|\n", len1, $1, len2, $2 ) }'
|               small|A|
|incredibly humungous|B|
0
01.12.2019, 15:58
1 ответ

У меня был местный друг, которому я доверяю с root-доступом к моей машине, войдите в систему напрямую и посмотрите. Он смог решить эту проблему, и оказалось, что это несколько вещей вместе взятых. Ради истории, я резюмирую то, что он нашел здесь.

  • Netgear ReadyNAS OS6, по сути, такая же, как Debian Jessie, и загружается из репозиториев Jessie
  • В какой-то момент в прошлом,Я случайно удалил некоторые репозитории Debian во время исправления другой проблемы, когда Netgear выпустил обновление
  • .
  • Также возник конфликт между официальными репозиториями Debian / Netgear / Jessie и репозиториями, добавленными с помощью дополнения -от стороннего (rnxtras ), которое, по-видимому, взято из Stretch
  • .

Мой друг смог распутать репозитории, удалить и переустановить правильную версию сломанных пакетов и закрепить их, чтобы в будущем они не загружались из неправильного репозитория. Let's Encrypt теперь вызывает Apt без ошибок и корректно обновляет сертификат.

Спасибо за помощь!

0
28.01.2020, 03:04

Теги

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