Как запустить xev от консоли?

Попытайтесь открыть терминал.

sudo passwd root

Затем

su

Вы - корень теперь.

Можно использовать chmod 755 изменить разрешение.

4
19.02.2015, 22:28
3 ответа

Все программы X11 Откройте свои окна на дисплее, указанные переменной среды дисплеем . Таким образом:

sudo -u 1000 env DISPLAY=:0 xev

или в этом случае, поскольку вы можете запустить программы в качестве другого пользователя с X-сервера, всего

DISPLAY=:0 xev

: номер - это нотация для локальных дисплеев; В большинстве сценариев сервер X11, который работает на консоли, является той, который начинается в первую очередь и в конечном итоге будет запускать число 0. Вы можете запустить Echo «$ display» в клемме на этом дисплеем, чтобы проверить, Номер отображения правильный. : 0.0 эквивалентно : 0 (трейлинг .0 может быть опущен).

Если вы запустите программу в качестве другого пользователя с X-сервера, а иногда даже если вы запустите его как тот же пользователь, вам может потребоваться установить изменение Xauthority . Эта переменная указывает на файл, который содержит пароль (называемый файлом cookie ), что приложения должны передаваться на X Server. Чтобы увидеть правильное значение из xauthority , запустить Echo $ xauthority на этом дисплее; Если это означает, что значение по умолчанию составляет ~ / .xauthority , где ~ представляет домашний каталог пользователя.

Если вам нужно найти значения отображения и Scauthority программно, см. Откройте окно на дисплее удаленного X (почему «не может открыть дисплей»)?

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

4
27.01.2020, 20:55

Вы должны попробовать:

xev --display localhost:0.0

Предполагая, что X на самом деле работает.

1
27.01.2020, 20:55
sed "s/\($(printf "[0-9][0-9]%s" '' - - '\) \(' : : '')\)/\1T\2/g"

Попробуйте создать шаблон программно. Это иногда может сделать это немного легче, чтобы прибить очень конкретные типы.

Вышеуказанное расширяется до...

sed 's/\([0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]\) \([0-9][0-9]:[0-9][0-9]:[0-9][0-9]\)/\1T\2/g'

(но без одинарных кавычек)

-121--244320-

Не уверен, что это какой-либо путь или данный путь

В Linux он работает таким образом

Если путь к файлу находится в $ FILE _ PATH

echo $ FILE _ PATH | rev | sed 's/[ ^/] * даст / sandy/user1/user2

echo $ FILE _ PATH | rev | cut -d '/' -f 3,4 | rev даст sandy/user1

Необходимо выбрать и изменить в соответствии с вашими данными и потребностями.

-121--249912-

Следующая команда очень полезна:

xev | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/\1 \2/p'

Но вам нужно установить переменную DISPLAY, и она связана с вашим положением на машине xev.

ПРИМЕЧАНИЕ: Когда вы применяете переменную DISPALY, ваша должность является незаконной, или у вас нет локального доступа к машине.

-1
27.01.2020, 20:55

Теги

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