Comandi del terminale in Automator per la manutenzione di Profile Manager

1

Sto usando macOS Server per gestire i nostri iPad e Profile Manager ha costantemente problemi che richiedono di interrompere il servizio e riavviare il server. Pulisco anche le attività completate e non completate (questo a volte aiuta). Vorrei utilizzare Automator per eseguire un'attività giornaliera per cancellare le attività completate dal database e una per cancellare settimanalmente le attività non completate.

Ecco il codice che ho, qualcuno può aiutarmi a configurarlo per Automator?

Cancella attività completate:

sudo -u _devicemgr psql -U _devicemgr -d devicemgr_v2m0 -h /Library/Server/ProfileManager/Config/var/PostgreSQL -c "DELETE FROM library_item_tasks WHERE completed_at IS NOT NULL"

Cancella non completato:

sudo -u _devicemgr psql -U _devicemgr -d devicemgr_v2m0 -h /Library/Server/ProfileManager/Config/var/PostgreSQL -c "DELETE FROM library_item_tasks WHERE completed_at IS NULL"
    
posta Tim Moseley 15.11.2017 - 19:19
fonte

1 risposta

0

Google: bash script how to - Uno script bash non è altro che un semplice file di testo che inizia con shebang e ha i comandi che desideri eseguire, una riga alla volta. Quindi reso eseguibile con chmod e se no collocato in una directory in PATH utilizza ./filename per eseguirlo.

Il metodo ./filename lo richiede in PWD in Terminal, altrimenti usa il nome percorso completo . Posizionarlo in una directory in PATH è in genere più semplice, quindi eseguire successivamente, se necessario, solo da filename .

Esempio:

In terminale:

touch cleartasks
open cleartasks

Aggiungi al file aperto:

#!/bin/bash
sudo -u _devicemgr psql -U _devicemgr -d devicemgr_v2m0 -h /Library/Server/ProfileManager/Config/var/PostgreSQL -c "DELETE FROM library_item_tasks WHERE completed_at IS NOT NULL"
sudo -u _devicemgr psql -U _devicemgr -d devicemgr_v2m0 -h /Library/Server/ProfileManager/Config/var/PostgreSQL -c "DELETE FROM library_item_tasks WHERE completed_at IS NULL"

Salva il file.

Di nuovo nel terminale, rendilo eseguibile:

chmod u+x cleartasks

Per eseguire:

./cleartasks
    
risposta data 16.11.2017 - 15:36
fonte