Frage

Ich schreibe ein Automator -Skript, das rsyncs Medien auf meinem 10.6.3 MacBook Pro zu meinem Ubuntu 10.10 HTPC. Ich kann Automator dazu bringen, mein Shell -Skript für auszuführen rsync Befehle, aber ich kann den Automator nicht die drei Bände auf dem HTPC (Ordner für Musik, Videos und Bilder) montieren.

Ich montiere diese Volumes automatisch, wenn ich mich anmelde (diese Computer verbinden über ein WLAN -Netzwerk), aber manchmal werden die HTPC -Volumes unmontiert, sodass ich standardmäßig neu anordnen möchte.

Gibt es eine Möglichkeit, die Volumina im Automator zu montieren? Ich bin auch offen für Shell Scripting. Vielen Dank!

War es hilfreich?

Lösung

Ich baue die ganze Zeit über solche Automator -Workflows. Sie benötigen nur zwei Aktionen und sie sind sowohl Dateien als auch Ordneraktionen.

1) Holen Sie sich angegebene Server. Auf diese Weise können Sie eine Liste von Aktien erstellen, mit denen Sie eine Verbindung herstellen können. Wenn Sie es vom Finder abbilden können -> Go -> Verbindung zum Server, können Sie dies verwenden.

2) Verbindung zu Servern herstellen. Dadurch wird eine Verbindung zu allen an sie übergebenen Servern hergestellt (entweder von GET -Kennzeichnungen oder von Ask for Server).

Andere Tipps

Ich verwende das folgende AppleScript, um Verzeichnisse in Verbindung mit dem Mount Marco Polo Daher werden Netzwerkaktien automatisch montiert, wenn ich sowohl in mein Büro als auch in mein Zuhause komme.

Sie müssen Benutzername, Kennwort, Server/ShareName und möglicherweise SMB: // je nach Servertyp ändern.

tell application "Finder"
    try
        mount volume "smb://USERNAME:PASSWORD@SERVER/SHARENAME"
        delay 1
    end try
end tell

AKTUALISIEREN: Eine Option ohne Marcopolo: Sie können den Server zuerst pingen und nur versuchen, eine Verbindung herzustellen, wenn Sie eine Antwort erhalten. Sie können dieses Skript dann in Ihr fügen Anmeldelemente

(Nehmen wir an, Sie versuchen, eine Verbindung zu einem Server mit dem Namen "slow_server" herzustellen.)

-- (0) Check to see if there server exists by pinging it
set max_retry to 60
set k to 0
repeat while (do shell script "ping -c 1 some_server") contains "100% packet loss"
    delay 5
    set k to k + 1
    if k > max_retry then error "Server is not responding for predefined period." number 8000
end repeat

-- (1) It exists, mount the volume
tell application "Finder"
    try
        mount volume "smb://USERNAME:PASSWORD@some_server/SHARENAME"
        delay 1
    end try
end tell
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit apple.stackexchange
scroll top