Как набрать переменную на клавиатуре с помощью xdotool? - PullRequest
6 голосов
/ 24 января 2012

Я пишу небольшой скрипт для сохранения некоторых данных из Интернета каждый день. Поэтому я использую xdotool для имитации всей моей навигации до того момента, пока передо мной не появится окно сохранения firefox, то есть перед моим сценарием. Хорошо, хорошо, пока здесь ... Но, когда я пытаюсь использовать день недели (или любые данные в переменной i) как часть имени файла, который будет сохранен ......... .. хммм -> "ничего не происходит". = (* * Тысяча два

Что ж, я думаю, у меня здесь есть некоторая простая проблема, я очень старался использовать содержимое переменной, полученной мной, с помощью функции date или простого канала напрямую, но xdotool отказывается вводить эту информацию в поле имени файла в Окно сохранения файла, которое выделено obvius и выделен текст.

Немного света на пути, Мастера! Я ужасный нуб! Сожалею! =) Так что это код, который я попробовал, (проблема в последней строке):

#!/bin/bash

i=|date +%A
echo $i

WID=`xdotool search --name "Mozilla Firefox" | head -1`
xdotool windowactivate $WID
xdotool key ctrl+l
xdotool type "http://whatever.com.au"
xdotool key Return 
sleep 2
xdotool key ctrl+s
sleep 2

xdotool type WeekDayIs$i

Полагаю, мне не хватает чего-то действительно обвиусового, возможно, какого-то типа ...

Я действительно начинающий, так что не вините меня так сильно. Я попробовал с "$i" и {"$i"} и '$' тоже .. ничего не работает ... = / Спасибо всем.

ps: И, если какой-нибудь приятный чувак захочет указать мне прямой способ сохранения какого-либо веб-контента непосредственно в файл, возможно, я пойду к нему на колени .. ;-) РЕДАКТИРОВАТЬ: я получил ответ на этот вопрос тоже здесь

РЕДАКТИРОВАТЬ ПОС-РЕШЕНИЕ:

yes shellter, этот код печатается во вторник и YesTuesday, а не во вторник 3 раза. хе-хе, один день за другим. Спасибо за ваше внимание.

#!/bin/bash
i=|date +%A
echo $i
echo $i
echo $i

i=$(date +%A)

echo Yes$i

1 Ответ

7 голосов
/ 24 января 2012

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

изменение

i=|date +%A

до

i=$(date +%A)

Затем, когда вы выполните свою последнюю строку

xdotool type WeekDayIs$i

$ у меня будет значение.

Надеюсь, это поможет.

P.S. Добро пожаловать в StackOverflow (SO) Пожалуйста, не забудьте прочитать Часто задаваемые вопросы , голосовать за хорошие вопросы и ответы, используя серые треугольники, http://i.imgur.com/kygEP.png, и принять ответ, который решит вашу проблему, если любой, нажав на галочку, http://i.imgur.com/uqJeW.png

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...