it-swarm.com.de

Führen Sie das Shell-Skript über die Tastenkombination aus

Ich möchte ein Shell-Skript auf Knopfdruck ausführen. Das Skript funktioniert, wenn ich es wie gewohnt ausführe: sh script.sh. Das Zuweisen einer Verknüpfung funktioniert jedoch nicht.

Screenshot of shortcut menu

Wie würden Sie dies in Xubuntu 14.10 tun?

3
TomTom

Ich bin mir ziemlich sicher, dass das Problem der ~ ist. Dies ist eine Shell-Funktion (Kommandozeilen-Shell), und die Tastaturkürzel werden von der grafischen Shell verwaltet. Ich denke nicht, dass ~ oder $HOME dort korrekt erweitert wird. Verwenden Sie also anstelle von ~/path/to/script

/home/username/Documents/Various/SyncStuff.sh

Das setzt voraus, dass Sie das Skript ausführbar gemacht haben. Wenn nicht, benutze

sh /home/username/Documents/Various/SyncStuff.sh

Das sh sollte ausreichen, da das $PATH meines Wissens auch von Grafik-Shells gelesen wird. Wenn dies ebenfalls fehlschlägt, versuchen Sie es mit dem vollständigen Pfad, aber ich bezweifle, dass dies erforderlich sein wird:

/bin/sh /home/username/Documents/Various/SyncStuff.sh
7
terdon

Super Beitrag. Ich habe nach einer Möglichkeit gesucht, dies für die letzten Versionen von Ubuntu zu tun (derzeit am 19.04.)

Den vollen Pfad zu nutzen, hat es geschafft. Danke. Was bei mir funktioniert hat war folgendes ...

Ich suchte nach einer Möglichkeit, einen Hotkey festzulegen, um das Datum und die Uhrzeit in das Dokument einzufügen, das ich geöffnet hatte.

Ich habe ein Skript online gefunden und ein paar kleinere Änderungen vorgenommen (hauptsächlich die Hotkey-Zuordnung, weil mir die Auswahl nicht gefiel, da es sich um eine Tastenkombination handelte, die bereits von Ubuntu verwendet wurde), die ich wollte und die auch verfügbar war.

Erstellt eine Datei mit dem Namen "insertTimestamp.sh" in meinem Stammverzeichnis.

Ich habe dann den Code nach meinen Wünschen eingefügt (und leicht modifiziert) ...

-------- Code zwischen Zeilen kopieren/einfügen ----------

!/bin/sh

xdotool keyup "super + t"; # benötigt, um den Status der Anfrage zu aktualisieren. simuliert das Loslassen der Tastenkombination "Super + T", andernfalls wird das Datum der Strg-V-Einfügefunktion "+% Y-% m-% d% H:% M:% S" beeinträchtigt tr -d "\ n" | xsel -i -b; # Fügen Sie das Datum und die Uhrzeit zur Zwischenablage hinzu. xdotool key "ctrl + v"; #Simulieren Sie eine Strg-V

xdotool keydown "super"; # interpretiere den Benutzer nicht, lasse den Superschlüssel los


Nachdem ich das Obige in die Datei eingefügt und gespeichert hatte, mussten die Berechtigungen der Datei geändert werden

chmod u+x ~/insertTimestamp.sh

Sobald dies erledigt ist, müssen Sie nur noch nach "keyboard" suchen => Wählen Sie "Keyboard => Gehe zu" Application Shortcuts Tab "=>" Add => Für "Command" geben Sie "sh the/full/path/insertTimestamp.sh" ein (ohne Anführungszeichen und Update Ihr vollständiger Pfad), => Setze Schlüssel als super + t.

Ich hoffe, dies ist ein gutes Beispiel für die Einrichtung.

Bildbeschreibung hier eingeben

1
Paul Johnston