Одна команда строки для добавления новых объектов к com.canonical. Единица. Systray-белый-список панели

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

У меня должна быть одна строка CLI для добавления нового объекта к com.canonical. Единица. Systray-белый-список панели.

Стандартная процедура для того, чтобы сделать так:

sudo gsettings get com.canonical.Unity.Panel systray-whitelist

Мы добираемся

['JavaEmbeddedFrame', 'Wine', 'Skype']

Затем мы делаем вторую команду

sudo gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Wine', 'Skype', 'shutter']"

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

До сих пор это - то, что я имею:

sudo gsettings set com.canonical.Unity.Panel systray-whitelist | gsettings get com.canonical.Unity.Panel systray-whitelist | sed -e "s/']$/,'shutter']/" | awk 'NF{print "\"" $0 "\""}'

Я думаю, что пропускаю что-то.

Во-первых, я не уверен, передаю ли я строку по каналу в функцию множества gsettings правильно. Во-вторых, в то время как я думаю, что анализирую вывод от gsettings, получают функцию правильно, я не выяснил бы способ добавить "" вокруг измененного результата с помощью sed, таким образом, я должен был передать другую команду awk по каналу в эту путаницу.

Благодаря любому, который помогает.

8
задан 15 April 2011 в 21:33

1 ответ

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

Это будет работать:

gsettings set com.canonical.Unity.Panel systray-whitelist "$(gsettings get com.canonical.Unity.Panel systray-whitelist | sed -e "s/]$/, 'shutter']/")"

(Кроме того, необходимо удалить 'в sed-e "s / '] $ / в примере для этого для работы).

Более позднее редактирование: между прочим, не выполняйте gsettings с sudo... ничего не выйдет.

8
ответ дан 15 April 2011 в 21:33

Другие вопросы по тегам:

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