Ho in programma di eseguire uno script che aggiornerà i nostri Mac con il nuovo pacchetto di licenze / installatore di licenze Adobe, ma non voglio che venga eseguito se l'attività è già stata eseguita in precedenza.
Mi piacerebbe vedere uno script in grado di verificare la presenza di un file locale (ad esempio /Library/adobecc2018.txt) che verrà inserito in questa posizione dopo che la ri-serializzazione è stata completata una volta. Se il file adobecc2018.txt non è presente, verrà eseguito lo script completo. Se adobecc2018.txt è lì, voglio che lo script termini e non andare oltre.
Inoltre, avrò un altro file .txt seduto su una condivisione di rete e mi piacerebbe vedere il file popolato con il nome del computer una volta eseguito lo script, quindi abbiamo un elenco di computer che possiamo guardare per vedere quali computer sono stati corretti e quali no.
Ho trovato la sceneggiatura su cui ho lavorato l'anno scorso ma non l'abbiamo usata. Quindi la prima parte della mia domanda viene esaudita ma deve ancora capire come aggiungere del testo in un .txt. Quindi esempio: /share/adobeupdate.txt
Mi piacerebbe vedere qualcosa di simile a questo:
ComputerName-Date
ComputerName2-Date
ComputerName3-Date
ComputerName4-Date
ComputerName5-Date
etc.
#!/bin/bash
echo "Adobe Update Script"
####
#### If file /Library/Scripts/adobecc2018.txt DOES exist then exit
####
if [[ -f "/Library/adobecc2018.txt" ]] ; then
echo '2018/19 Adobe Serialization Fix Already Applied - No more actions required'
exit
fi
####
#### If file /Library/Scripts/adobecc2018.txt does NOT exist continue script
####
if [ ! -e "/Library/adobecc2018.txt" ]; then
echo 'Adobe is using the OLD serial number - Now applying new 2018/19 Adobe Serialization'
# touch /Volumes/shares/macscripts/adobecc2018_serialization_fix.command
sudo touch /Library/adobecc2018.txt
echo 'Adobe 2018/19 Serialization Completed'
fi
# Script End
exit 0