I comandi di script di shell funzionano bene nel terminale ma non tramite AppleScript

2

Ho due comandi che devo eseguire attraverso il terminale. Sono
cd /Users/[my name]/Desktop e curl 'www.google.com'>google.txt . Quando si eseguono questi direttamente nel terminale funzionano perfettamente. Tuttavia, quando si esegue questo in AppleScript:

do shell script "cd /Users/Peter1/Desktop"
do shell script "curl 'www.google.com'>google.txt"

Ha prodotto l'errore:

sh: google.txt: Permission denied

Perché sta succedendo questo? Cosa posso fare per risolverlo?

Grazie

    
posta APCoding 25.07.2015 - 04:03
fonte

1 risposta

2

Lo script di cui sopra esegue due script diversi. Uno sta cambiando la directory di lavoro nella cartella del desktop dell'utente ( ~/Desktop ). L'altro script sta scaricando www.google.com e lo inserisce in un documento nella directory principale ( / ), che non dispone delle autorizzazioni per farlo.

Puoi risolvere questo problema riducendolo a un'istruzione di do shell script come ad esempio:

do shell script "curl www.google.com > ~/Desktop/google.txt"

In breve, lo script prima scarica i contenuti del sito Web www.google.com e quindi crea un nuovo file nella directory specificata. Potresti anche notare il carattere ~ , che equivale a /Users/username/ .

    
risposta data 25.07.2015 - 04:36
fonte

Leggi altre domande sui tag