Ho appena scritto un'app Automator utilizzando AppleScript (insieme a un paio di linee bash) per avviare FTP con un solo clic. Tuttavia corre più di un po 'lento. Ecco il codice:
set ftpstatus to "off"
try
do shell script "echo \"QUIT\" | telnet 127.0.0.1" & " ftp 2>&1 | grep \"Escape character is\" > /dev/null"
set ftpstatus to "on"
on error
set ftpstatus to "off"
end try
if (ftpstatus = "off") then
set ipaddr to IPv4 address of (get system info)
set sun to short user name of (get system info)
do shell script "sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist" with administrator privileges
tell application "Finder" to display alert "FTP Launched and ready for file-transfer" & character id 8233 & character id 8233 & character id 8233 & "Address: ftp://" & ipaddr & ":21" & character id 8233 & "User Name: " & sun
else
do shell script "sudo -s launchctl unload -w /System/Library/LaunchDaemons/ftp.plist" with administrator privileges
tell application "Finder" to display alert "FTP session closed"
end if
Ecco cosa fa il codice:
- Controlla se il server FTP è in esecuzione
- Se sì, spegnilo e lancia una finestra di messaggio che dice "sessione FTP chiusa"
- Se no, accenderlo e lanciare una finestra di messaggio che dice "Sessione FTP aperta" insieme al mio indirizzo IP e nome utente
Questo script funziona come un incantesimo ma poiché è troppo lento, mi chiedo se c'è un modo per convertirlo in uno script di shell bash. Questo dovrebbe accelerare molto le cose. Qualche suggerimento?