Bash xdotool записывает вывод в переменные

Привет, ребята. Я использую скрипт bash, чтобы узнать текущее местоположение моей мыши, но я застрял с этим. когда я делаю:

xdotool getmouselocation
x:688 y:411 screen:0 window:98568199

Я получил свой вывод в виде строки, я вроде новичок. Как я могу получить значения x а также y в некоторые переменные, так что я могу использовать их дальше. Спасибо.

1 ответ

Координата x является первым словом в выводе (принимая как должное, что пробел является разделителем слов). у координата является второй. Так:

#!/bin/bash
#
output=$(xdotool getmouselocation)
x=$(echo $output | awk '{print $1}' | cut -d":" -f2)
y=$(echo $output | awk '{print $2}' | cut -d":" -f2)

echo "X= $x"
echo "Y= $y"

Awk печатает слово, которое вы просили ($1 или $2), и cut дает вам то, что следует за символом ":".

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