Итак, я видел множество отображений прозрачных журналов или запущенных журналов или экземпляров htop на том, что выглядит как фиксированные области рабочего стола. Я думаю, что это что-то вроде root-tail, но я не могу заставить root-tail работать. Это заставляет меня подозревать, что либо это делается по-другому, либо проблема тривиальна, если вы знаете, как это исправить. Либо может быть так.
Итак, я попробовал несколько примеров:
sudo root-tail -g 800x250+100+50 /var/log/syslog,green
Пример выше не показывает ошибок, но также не отображает.
user@machine:/home/user/scripts# sudo root-tail -g 800x250+100+50 -font fixed /var/log/syslog,green /var/log/auth.log,red,'ALERT'
Missing charsets in String to FontSet conversion (ISO8859-2)
Missing charsets in String to FontSet conversion (ISO8859-2)
Нет. Вычеркнул снова.
Подсказки?
root-tail
делает точно, что Вы хотите, но в пути существует другое окно. Это кратко обсуждено в раздел BUGS root-tail
страница справочника.
Большинство рабочих столов в наше время управляет "корневым окном" с overlayed окном. В LXDE это сделано с pcmanfm
, в GNOME это было nautilus
, и Единица имеет свою собственную вещь. То, что Вы хотите сделать, производили корневой хвост к этому наложению.
xwininfo
xwininfo: Window id:
. Вы хотите следующее шестнадцатеричное число. -id
флаг с шестнадцатеричным числом от предыдущего шага. т.е.: root-tail -g 800x250+100+50 -id 0x1000003 /var/log/syslog,green
Вот то, на что xwininfo
похож для меня (как пользователь LXDE):
❯ xwininfo
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
xwininfo: Window id: 0x1000003 "pcmanfm"
Absolute upper-left X: 0
Absolute upper-left Y: 0
Relative upper-left X: 0
Relative upper-left Y: 0
Width: 1680
Height: 1050
Depth: 24
Visual: 0x21
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x20 (installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +0+0 -0+0 -0-0 +0-0
-geometry 1680x1050+0+0
, Если я kill
pcmanfm
(и сокращают вывод) Вы видите, каково корневое окно действительно. Это - то, где Вы пишете, когда Вы не используете root-tail
-id
флаг:
❯ ps xa |grep pcmanfm
13123 ? Sl 0:00 pcmanfm --desktop --profile lubuntu
14496 pts/0 S+ 0:00 grep pcmanfm
❯ kill 13123
❯ xwininfo |grep id:
xwininfo: Window id: 0x29a (the root window) (has no name)
Примечание: идентификатор окна Вашего "управляемого образования", скорее всего, изменит каждую сессию.
Программа как htop является пользовательской программой, разработанной на языке C. Это пользуется ncurses библиотекой, которая позволяет программе управлять своим выводом в терминале, своего рода псевдо GUI. Для получения того же эффекта программа должна быть записана с помощью ncurses.
Вы могли использовать Носатый для отображения журналов с прозрачным окном, возможно, что-то вроде этого:
conky.config = {
-- — SETTINGS —
background = false,
update_interval = 1,
cpu_avg_samples = 2,
net_avg_samples = 2,
double_buffer = true,
no_buffers = true,
text_buffer_size = 2048,
imlib_cache_size = 0,
-- — WINDOW —
--own_window_class = 'Conky',
own_window_argb_visual = true,
own_window_argb_value=0,
--own_window_type='dock',
own_window=true,
own_window_transparent=true,
own_window_hints='undecorated,below,sticky,skip_taskbar,skip_pager',
-- — BORDER —
border_inner_margin = 1,
border_outer_margin = 1,
border_width = 1,
-- — SIZE — #
minimum_width = 1800,
maximum_width = 1800,
-- default_bar_width = 50, default_bar_height = 15,
-- — ALIGNMENT —
gap_x = 75,
gap_y = 450,
-- — GRAPHIC —
draw_shades = false,
draw_outline = false,
draw_borders = false,
draw_graph_borders = true,
--default_shade_color
--default_outline_color 909090
--own_window_colour 808080
-- — TEXT —
use_xft = true,
font = 'Dejavu Sans:size=10',
xftalpha = 1.0,
uppercase = false,
override_utf8_locale = true,
default_color = 'white',
-- — LUA —
--lua_load ~/Conky/bgcolor/bg.lua
--lua_draw_hook_pre conky_draw_bg
-- — Colors —
color1 = '#C18C24',
};
conky.text = [[
${color1}${font Dejavu Sans:size=12:condensed:bold}DD-WRT Router Log${font}
#${exec curl ipinfo.io}
----------------------------------${font}${color}
${exec watch -nd | tail -n 15 /var/log/ddwrt/ddwrt.log | sort -r}
]];
отобразит что-то вроде этого: