Zwingen Sie eine App, eine der Menüoptionen aus einem Shell -Skript auszuführen?

apple.stackexchange https://apple.stackexchange.com/questions/4022

  •  16-10-2019
  •  | 
  •  

Frage

Gibt es eine Möglichkeit, die App zu zwingen, eine der Menüoptionen auszuführen, wenn keine Befehlszeilenschnittstelle verfügbar ist?

Vielleicht eine Art Automatisierung?

BEISPIEL

Ich möchte den Befehl "Datei> Exportfeeds" von Newsfire ausführen, um die Feed -Liste (OPML -Datei) zu sichern. Ich habe versucht, Newsfire durch Terminal mit "-Help" zu führen, aber kein Glück.

Hier ist das Backup -Skript, das ich derzeit verwende, falls jemand es nützlich empfindet. Es kann verwendet werden, um den Status von Newsfire zu speichern und wiederherzustellen, um mehrere Maschinen zu erreichen (um Sie nur wiederherzustellen cd ~ , und dann unzip backup.zip).

#! /bin/bash
#
# Backup NewsFire preferences, feeds and cache (everything)
#

D_DESTFILE=~/Backups/Config/NewsFire.zip

# Don't update archive, create new one
if [ -e "$D_DESTFILE" ]; then
  rm $D_DESTFILE
fi

cd ~
zip -r $D_DESTFILE Library/Application\ Support/NewsFire Library/Caches/org.xlife.NewsFire Library/Preferences/org.xlife.NewsFire.plist
War es hilfreich?

Lösung

Dies ist ein Beginn eines Apfelkripts zum Exportieren:

set filename to "test file"

tell application "NetNewsWire" to activate
tell application "System Events"
    tell process "NetNewsWire"
        click menu item "Export Subscriptions…" of menu "File" of menu bar 1
        set value of first text field of first sheet of first window to filename
        click button "Save" of first sheet of first window
    end tell
end tell

tell application "NetNewsWire" to quit

Sie speichert die exportierte Datei mit dem festgelegten Dateinamen an dem Ort, der zuletzt zum Exportieren verwendet wurde. Es wird eine aktuell vorhandene Datei nicht überschrieben, sodass Sie sie möglicherweise an einem temporären Ort speichern und mit einem separaten Skript verschieben können.

Notiz: Meine Kopie von NetNewswire hatte den Menübefehl "Exportabonnements ...", nicht "Exportfeeds", aber wenn Ihre unterschiedlich ist, ändern Sie einfach den Namen des Menüelements in Zeile 6.

Zum Hinzufügen bearbeiten: Sie müssen außerdem "Zugriff für Hilfsmittel aktivieren" im Universal Access System Preference Panel für aktiviert für die Funktionsweise sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit apple.stackexchange
scroll top