Вы можете предварительно обработать свой файл, чтобы вставить специальный символ для тех строк, которые вы хотите добавить в белый список, чтобы предотвратить их замену.
Как вы бы изменили:
<user1></user1>
<password2></password2>
Сначала на
<user1></user1>
<|password2><|/password2>
и используйте s / \ (<[^ | 0-9>] * \) [0-9] * \ ([^ 0- 9] *> \) / \ 1 \ 2 / g
для замены. Если |
уже может встречаться во входных данных, вы можете избежать их, используя такую схему: _
-> _u
, |
-> _p
, которую нужно было отменить позже.
sed '
s/_/_u/g;s/|/_p/g
s:<\(/\{0,1\}password2>\):<|\1:g
s:<\(/\{0,1\}othertag>\):<|\1:g
s/\(<[^|0-9>]*\)[0-9]*\([^0-9]*>\)/\1\2/g
s/|//g;s/_p/|/g;s/_u/_/g'
Моя среда — Centos 7.6, и у меня такая же ситуация.
Я проверил вывод yum repolist -v
.
И я обнаружил, что Repo-exire
из gitlab_gitlab-ce/x86_64
и gitlab_gitlab-ce-source
равно 300 second(s)
. С другой стороны, остальные 21,600 second(s)
.
Repo-id : extras/7/x86_64
Repo-name : CentOS-7 - Extras
Repo-revision: 1544457521
Repo-updated : Tue Dec 11 01:00:03 2018
Repo-pkgs : 321
Repo-size : 392 M
Repo-mirrors : http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=extras&infra=stock
Repo-baseurl : http://ftp.neowiz.com/centos/7.6.1810/extras/x86_64/ (9 more)
Repo-expire : 21,600 second(s) (last: Thu Jan 24 11:56:00 2019)
Filter : read-only:present
Repo-filename: /etc/yum.repos.d/CentOS-Base.repo
Repo-id : gitlab_gitlab-ce/x86_64
Repo-name : gitlab_gitlab-ce
Repo-updated : Tue Jan 22 23:20:38 2019
Repo-pkgs : 437
Repo-size : 141 G
Repo-baseurl : https://packages.gitlab.com/gitlab/gitlab-ce/el/7/x86_64/
Repo-expire : 300 second(s) (last: Thu Jan 24 13:11:16 2019)
Filter : read-only:present
Repo-filename: /etc/yum.repos.d/gitlab_gitlab-ce.repo
Наверное, "!!!" означает, что срок действия информации репо истек.
Это означает, что настройка проверки подписи GPG отключена и не выполняется проверка подлинности загруженного пакета.
Например, в файле репозитория Gitlab, расположенном в:/etc/yum.repos.d/gitlab_gitlab-ee.repo
Значение gpgcheck=0
Вы можете избавиться от этого, установив ключ GPG с серверов Gitlab и установив значение 1. Инструкции для этого в случае Gitlab находятся здесь:
https://docs.gitlab.com/omnibus/update/package_signatures#package-repository-metadata-signing-keys
В качестве примечания, gpgcheck
не следует путать с настройкой repo_gpgcheck
, которая включает проверку подписи метаданных репозитория yum , а не самих пакетов.