xdotool – symulacja skrótów klawiszowych z poziomu terminala

xdotool to konsolowe narzędzie, które pozwala na wykonywanie akcji przypisanych do skrótów klawiaturowych z poziomu terminala. W połączeniu z bashem lub innym językiem oraz cronem możemy automatycznie wykonywać sekwencje skrótów klawiszowych o określonej porze dnia i nocy. Wszystko zależy od naszej wyobraźni i chęci do napisania takiego skryptu.

Instalacja

sudo apt-get install xdotool

Działanie

Aby z poziomu terminala wywołać skrót klawiszowy, należy wydać polecenie:

[Ubuntu 11.10] Opcja tworzenia aktywatorów w menu kontekstowym prawego przycisku myszy

Tworzenie aktywatorów w Ubuntu 11.10 jest utrudnione – pisałem o tym wcześniej [Ubuntu 11.10] Tworzenie aktywatorów na pulpicie.
Na szczęście można dodać opcję dodawania aktywatora do menu kontekstowego dzięki prostemu skryptowi – będzie to tematem tego wpisu.
Na początek utworzymy prosty skrypt tworzący aktywator. Otwórz terminal i wydaj polecenie:

gedit ~/.gnome2/nautilus-scripts/utworz-aktywator

W oknie edytora tekstu wklej następujący kod:

#!/bin/bash
gnome-desktop-item-edit --create-new ~/Pulpit

Zapisz plik Ctrl + S i wydaj kolejne polecenie, które nada naszemu skryptowi uprawnienia do uruchamiania:

Autostart skryptów wymagających praw roota

Załóżmy taką sytuację…

Mamy przygotowany skrypt o nazwie moj_skrypt, który:

  • chcemy uruchomić wraz ze startem systemu,
  • wykonuje polecenia wymagające praw roota.

Niestety tradycyjny autostart takiego programu jest niemożliwy, właśnie ze względu na konieczność weryfikacji użytkownika. Istnieje jednak proste rozwiązanie, dzięki któremu obejdziemy ten proces.

Dodanie pliku do autostartu

Dobrym rozwiązaniem jest utworzenie skryptu, który wywoływać będzie skrypt główny. Otwórz terminal i wydaj polecenie:

sudo gedit /etc/init.d/skrypt

Wklej do niego poniższy kod (odpowiednio uzupełniony):

[KDE] Dodanie opcji „Uruchom w terminalu” do menu kontekstowego

Zauważyłem, że w środowisku KDE aby uruchomić skrypt bash, należy wpisać jego lokalizację w terminalu i potwierdzić operację klawiszem Enter. Natomiast próba uruchomienia skryptu poprzez kliknięcie, kończy się uruchomieniem edytora tekstu Kate.

Można sobie ułatwić życie dodając do menu kontekstowego opcję pozwalającą na uruchomienie skryptów sh w szybki sposób, bez konieczności otwierania terminala i klepania na klawiaturze.

Paczkę z plikiem można pobrać stąd.

W paczce znajduje się również ikona, którą należy umieścić w:

/usr/share/icons

Po rozpakowaniu plik terminal.desktop należy przenieść do:

[KURS] Programowanie w powłoce #6 – obliczanie wyrażeń

W szóstej części kursu Programowanie w powłoce przedstawię operatory arytmetyczne.

Operatory arytmetyczne
Operator Działanie
+, – dodawanie i odejmowanie
!, ~ logiczna i bitowa negacja
** potęga
*, /, % mnożenie, dzielenie, reszta z dzielenia
<<, >> przesunięcie bitowe
<=, >=, <, >, ==, != porównania
&, ^, | bitowe AND, XOR oraz OR
&&, || logiczne AND oraz OR
wyrażenie1?wyrażenie2:wyrażenie3 wyrażenie warunkowe
=, +=, -=, *=, /=, %=, <<=, >>=, &=, ^=, |= przypisania

Przykłady

Poniższy trywialny skrypt pokazuje zastosowanie operatorów:

#!/bin/bash

x=1