xmlstarlet последовательно выбирает несколько вхождений одного и того же тега

Следующее решило ту же проблему (gnome -control -center empty )для меня:

/usr/lib/goa-daemon --replace
env XDG_CURRENT_DESKTOP=GNOME gnome-control-center

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

В моем случае -, как описано выше -у меня было две проблемы с блокировкой:

  1. срок действия учетной записи в сети -учетная запись -сеанс не может войти в систему -таким образом, не будет запускаться gnome -управление -центр онлайн -учетные записи -, что, в свою очередь, блокирует все гном -управление -центр
  2. установка среды Gnome перед запуском gnome -центр управления -, как упоминалось в предыдущем постере

Я нахожу эту штуку с Gnome довольно хрупкой и похожей на дизайн «не держите подальше пользователей Gnome». Я лично использую evince для электронной почты, контактов, задач и календаря в KDE, и мне нужен работающий центр управления gnome --, чтобы правильно настроить его.

0
10.02.2021, 08:01
1 ответ

Я действительно не понимаю, почему вы хотите анализировать весь файл XML один раз для каждого адреса FTP-сервера. Было бы разумнее извлечь все имена серверов и прочитать их в цикле:

xmlstarlet sel -t -v '//JOB/AUTOEDIT2[@NAME="%%FTP-RHOST"]/@VALUE' -nl file.xml |
while IFS= read -r ftpserver; do
    # do things with "$ftpserver"
done

Если вам нужно убедиться, что вы получаете только первые 16 заданий:

xmlstarlet sel -t -v '//JOB[position()<=16]/AUTOEDIT2[@NAME="%%FTP-RHOST"]/@VALUE' -nl file.xml |
while IFS= read -r ftpserver; do
    # do things with "$ftpserver"
done

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

0
29.04.2021, 12:28

Теги

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