Старые индексные файлы репозиториев

Предполагая, что запись начинается, когда в первом столбце есть текст, вы можете изменить эти три записи с помощью

awk '/^[A-Z]/ { substitute = ($1 ~ /^((SAP|GOLD)_PROD|EVENTS_SAP)$/) }
    substitute { sub(/sape-scan/, "sapi-scan") }1' tnsnames.ora >tnsnames.new

Awk обрабатывает каждую строку из входной строки по сценарию, т.е. текст в одинарных кавычках представляет собой небольшую программу, которая применяется к каждой строке в вашем файле.

В этом скрипте переменная substituteполучает логическое значение, указывающее, соответствует ли строка заголовка регулярному выражению. Если логическое значение истинно, мы выполняем замену в каждой строке, пока не увидим другую строку заголовка, и значение логического значения снова оценивается и, возможно, обновляется.Одинокий 1заставляет печатать каждую строку.

Результат помещается в новый файл, так что вы можете diffи т. д. по сравнению с оригиналом. Если вы удовлетворены результатом, вы можете заменить старый файл, простоmv:присвоив новому файлу имя старого файла.

0
05.05.2019, 16:39
1 ответ

Предыдущие индексные файлы сохраняются в /var/lib/apt/lists. Это последние индексные файлы, которые aptбыли успешно загружены и проверены.

Ключ определяется по сигнатуре Release, которая находится не в самом файле Release, а в Release.gpgрядом с ним. В некоторых репозиториях есть файл InRelease, содержащий содержимое Releaseсо встроенной подписью.

В вашем случае отсутствующий ключ — это ключ PackageCloud Atom; следуйте этим инструкциям , чтобы восстановить его.

1
28.01.2020, 02:40

Теги

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