Serve l'app della barra dei menu per mostrare l'output del comando Terminale ogni 60 secondi

7

Ho bisogno di un'app per la barra dei menu * che mi mostri l'output di un comando di terminale e che esegua il comando Terminale ogni 60 secondi circa.

Oppure ho bisogno di un'app per la barra dei menu che legge il contenuto di un file e aggiorna ogni volta che il file viene aggiornato.

(L'output non dovrebbe essere superiore a 3 o 4 cifre)

Esistono app di questo tipo?

* né il Dock né il Desktop sono alternative praticabili. Deve essere la barra dei menu.

Aggiornamento 2014-06-16: La risposta del 9 giugno 12 alle 2:15 non ha funzionato per me, dopotutto, quindi sto ancora cercando una soluzione.

    
posta TJ Luoma 09.06.2012 - 03:23
fonte

5 risposte

2

Finalmente ho trovato quello che stavo cercando. In effetti, è molto meglio di quello che speravo:

TextBar

  • Configura TextBar per eseguire più script / comandi / etc e visualizza i risultati nella barra dei menu.
  • Fai clic sull'elemento TextBar per aggiungere il testo negli Appunti.
  • Abilita / disabilita ciascun elemento singolarmente.
  • Configura la frequenza con cui desideri aggiornare ciascun elemento.
  • aggiungi un'icona per ogni elemento della barra dei menu (o nessuno)

Lo uso da una settimana o giù di lì ed è fantastico.

3 $. Demo disponibile su link

    
risposta data 18.04.2015 - 18:01
fonte
10
#!/usr/bin/env ruby

require "osx/cocoa"
include OSX

app = NSApplication.sharedApplication 
statusitem = NSStatusBar.systemStatusBar().statusItemWithLength(NSVariableStatusItemLength)
while true
    statusitem.setTitle(rand(999))
    sleep 1
end
app.run

(Se qualcuno che sa veramente Cocoa vuole migliorare questo, sentiti libero di modificare.) Ho più o meno appena copiato lo script da blog deltaw: punti esperienza personale e menulets OSX , citato in è-there-a-way-to-have-appleScript-output-display-in-the-menubar "> display - C'è un modo per mostrare l'output AppleScript nella barra dei menu? - Apple .

    
risposta data 09.06.2012 - 04:15
fonte
5

Ecco la soluzione in python.
Installa rumps framework (repository collegato ha una patch per OS X 10.9.3)
sudo pip install git+https://github.com/tito/rumps

Potrebbe essere necessario regolare $PYTHONPATH per includere pyobjc (Foundation)
export PYTHONPATH=/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python

Modifica il seguente codice in base alle tue esigenze:

#!/usr/bin/env python
import rumps
import os
import threading


class AwesomeStatusBarApp(rumps.App):
    def __init__(self):
        super(AwesomeStatusBarApp, self).__init__("Awesome App", "Title")
        tail(self)


def tail(self):
    threading.Timer(5, tail, [self, ]).start()
    self.title = os.popen("tail -1 /var/log/system.log").read()[0:-1][0:50]

AwesomeStatusBarApp().run()

Non dimenticare di limitare la lunghezza della stringa ( [0:50] ) (o OS X la rimuoverà a favore dei menu se entrambi non si adattano), e sbarazzarsi della fine riga alla fine ( [0:-1] )

    
risposta data 17.06.2014 - 12:41
fonte
2

Stavo cercando questo strumento molte volte fino a quando non l'ho implementato per me: link . Nessuna pubblicità, è gratuita e puoi creare qualsiasi cosa tu voglia.

    
risposta data 10.04.2015 - 16:39
fonte
1

C'è un'altra alternativa open source recente chiamata BitBar (licenza MIT), che appare molto simile a "TextBar" e "ShellWrangler "e stupisce per la sua semplicità.

Puoi eseguire script in qualsiasi intervallo di tempo codificato nel nome del file di script (ad es. my_script.60s.py) e puoi eseguire qualsiasi script che puoi eseguire anche nel tuo terminale.

    
risposta data 08.03.2016 - 01:47
fonte

Leggi altre domande sui tag