Из Ubuntu 13.01 Compiz использует dconf в качестве backend вместо gconf.
Запустите dconf dump /org/compiz/profiles/unity/ | grep active-plugins в терминале. Это даст вам нечто вроде
active-plugins=['core', 'composite', 'opengl', 'wall', 'resize', 'vpswitch', 'compiztoolbox', 'move', 'snap', 'grid', 'imgpng', 'commands', 'unitymtgrabhandles', 'mousepoll', 'place', 'copytex', 'regex', 'session', 'animation', 'fade', 'expo', 'workarounds', 'ezoom', 'scale', 'unityshell']
См. Ответ https://askubuntu.com/a/320677/10475
См. ответ https://askubuntu.com/a/320677/10475
Я только что написал и протестировал это, и он работает для меня, если ваш текст находится в файле: text_for_sed.txt
command:
sed -n "/<tmp>\([[:digit:]]\{2\}\)<\/tmp>/{
s/<tmp>\([[:digit:]]\{2\}\)<\/tmp>/\1/p
n
s/<flik>\([[:digit:]]\{2\}\)<\/flik>/\1/p
n
s/<t>\([[:alpha:]]\+\)<\/t>/\1/p
}" text_for_sed.txt
output
48
46
Fair
, если grep производит выход, тогда вы будете его транслировать в sed
<your grep command> | sed -n "/<tmp>\([[:digit:]]\{2\}\)<\/tmp>/{
s/<tmp>\([[:digit:]]\{2\}\)<\/tmp>/\1/p
n
s/<flik>\([[:digit:]]\{2\}\)<\/flik>/\1/p
n
s/<t>\([[:alpha:]]\+\)<\/t>/\1/p
}"
Я знаю, что это сложно выглядит, я пытался подумать о более лучшем (более простом) путь - если бы вы могли сделать это за несколько проходов, grep --only было бы проще, но за один проход sed это единственный способ, которым я знаю, как это сделать.
#!/bin/bash
data=$(lynx -dump "http://wxdata.weather.com/wxdata/weather/local/14225?cc=*&unit=f&dayf=1" | grep -A 2 -m 1 "<tmp>")
for pattern_to_find in tmp flik t
do
echo $data | tr " " "\n" | sed -ne "/<$pattern_to_find>/s#\s*<[^>]*>\s*##gp"
done
Выход
51
51
Mostly
echo $data | tr " " "\n" | sed -ne '/<pattern_to_find>/s#\s*<[^>]*>\s*##gp'
tr " " "\n" - заменяет пробелы на \n
Выход
Элемент списка
n - подавляет печать всех строк
e - script [!d9 ]
/<pattern_to_find>/ - находит строки, содержащие указанный шаблон, что может быть, например, <tmp>
next - это подстановочная часть s///p, которая удаляет все, кроме желаемого значения, где / заменяется на # для лучшей читаемости:
s#\s*<[^>]*>\s*##gp
\s* - включает в себя белые пробелы, если они существуют (то же самое в конце) <[^>]*> представляет <xml_tag> как альтернативную причину отсутствия жадного регулярного выражения <.*?> работа для sed g - заменяет все, например, закрытие xml </xml_tag> тега
Источник @vldbnc