Ich habe mehrere Websites in Coda, die ich automatisch erneut herunterladen möchte, wenn ich es dazu auffordere. Die Sites werden gemeinsam verwaltet, und ich möchte automatisch eine neue Kopie der Sites herunterladen. Ich bin offen für AppleScripting, einen Automator-Workflow, ein Shell-Skript, eine Kombination aus allen dreien oder alles andere, was Sie vorschlagen. Wie würde ich vorgehen?
Bearbeiten: Kann ich ein Shell-Skript schreiben, um die gesamte Site per FTP herunterzuladen, es dann in meinen Ordner "Sites" zu kopieren und die vorhandenen Daten zu überschreiben? Ich muss in der Lage sein, dies für mehr als eine Site zu tun, also brauche ich eine Möglichkeit, den Domänennamen, den Benutzer, das Passwort und das Verzeichnis zu übergeben, in das es kopiert werden soll.
Sie können dafür einfach wget verwenden und es beliebig skripten. Hier ist ein kurzes Beispiel dafür, wie Sie es verwenden können, um eine Ihrer Websites in einer Zeile herunterzuladen und zu überschreiben:
wget ~/Sites/domain/ ftp://[username]:[password]@ftp.example.com/www/
Um also mehrere Websites zu erstellen, würden Sie Folgendes verwenden:
wget -P ~/Sites/ -i sites.txt
Und Ihre Textdatei könnte in etwa so aussehen:
ftp://username:password@ftp.site1.com/www/
ftp://username:password@ftp.site2.com/www/
ftp://username:password@ftp.site3.com/www/
Von der wget Manpage:
Recursive download:
-r, --recursive specify recursive download.
-l, --level=NUMBER maximum recursion depth (inf or 0 for infinite).
--delete-after delete files locally after downloading them.
-k, --convert-links make links in downloaded HTML or CSS point to
local files.
-K, --backup-converted before converting file X, back up as X.orig.
-m, --mirror shortcut for -N -r -l inf --no-remove-listing.
-p, --page-requisites get all images, etc. needed to display HTML page.
--strict-comments turn on strict (SGML) handling of HTML comments.
Recursive accept/reject:
-A, --accept=LIST comma-separated list of accepted extensions.
-R, --reject=LIST comma-separated list of rejected extensions.
-D, --domains=LIST comma-separated list of accepted domains.
--exclude-domains=LIST comma-separated list of rejected domains.
--follow-ftp follow FTP links from HTML documents.
--follow-tags=LIST comma-separated list of followed HTML tags.
--ignore-tags=LIST comma-separated list of ignored HTML tags.
-H, --span-hosts go to foreign hosts when recursive.
-L, --relative follow relative links only.
-I, --include-directories=LIST list of allowed directories.
--trust-server-names use the name specified by the redirection
url last component.
-X, --exclude-directories=LIST list of excluded directories.
-np, --no-parent don't ascend to the parent directory.
/www/
like angeben /www/path/to/file/
. Meinst Du das? Ich habe einige wget
Argumente in meine ursprüngliche Antwort aufgenommen, die helfen sollten.
Jason Salaz
daviesgeek
honiggrün
daviesgeek