Mac Sierra - Konvertieren Sie Seiten stapelweise in reinen Text

Beim Versuch, Seiten stapelweise in reinen Text zu konvertieren, treten jedoch immer wieder Probleme mit Dateiberechtigungen auf. (Verwendung von Sierra 10.2.3 nach dem Upgrade von 10.2.2)

Dateiname konnte nicht exportiert werden. Sie haben keine Berechtigung.

Bisher zwei Methoden:

auf Lauf
    Sagen Sie der Anwendung "Finder"
        setze mfolder auf „Macintosh HD:Users:me:Documents:convertme:“
        setzen Sie die Dateien auf den Namen jeder Datei des Ordners mfolder
    Ende erzählen
    setze theFolder auf „Macintosh HD:Users:me:Documents:converted:“
    Sagen Sie der Anwendung "Seiten"
        aktivieren Sie
        Wiederholen Sie dies mit einer Datei in den Dateien
            öffne einen Ordner
            setze sourceFolder auf den POSIX-Pfad einer Datei
            setze newsourceFolder auf die Zeichen 1 bis -8 von sourceFolder als String
            setze theFolder auf newsourceFolder & ".txt"
            Frontdokument in POSIX-Datei theFolder als unformatierten Text exportieren
            vorderes Dokument schließen
        Ende wiederholen
    Ende erzählen
Endlauf

Auch mit Automator versucht: auf Ask for Finder Item

Funktion ausführen (Eingabe, Parameter) {
    inDatei = Pfad ( Eingabe );
    outFile = Path( input.toString().replace(/\.[^\.]+$/, '.pdf') );
    Seiten = Anwendung('Seiten');
    document = pages.open( inFile );
    pages.export(document, {to: outFile, as: 'PDF'});
    pages.close(document, {saving: 'no'});
    gib outFile zurück;
}

Berechtigungen für den Ordner eingestellt auf: Jeder kann lesen und schreiben

Existieren mfolderund theFolderexistieren sie bereits und wenn ja, haben Sie die Berechtigung, sie zu lesen/schreiben? Warum erstellen Sie jedoch generische Ordner direkt unter Benutzern, das ist eine schlechte Praxis! Sie sollten den Ordner so einstellen, dass er irgendwo in Ihrem eigenen Home-Ordner lesen und schreiben soll, da dies Berechtigungsfehler vermeiden sollte. (Das setzt voraus, dass Sie überhaupt die Berechtigung haben, die Quelldateien zu lesen.)
Oh, ich erstelle sie eigentlich als langen Unterordner unter Benutzer, habe das aber der Einfachheit halber abgeschnitten.
Ich habe gerade überprüft und sichergestellt, dass jeder Lese- und Schreibberechtigungen hat ... immer noch der gleiche Fehler
Haben Sie auch die Zugriffsrechte auf die Seitendateien überprüft? Wie sehen die Dateinamen aus, sind darin Nicht-ASCII-Zeichen enthalten (irgendwelche Umlaute oder andere utf8-Zeichen)?
normale ASCII-Dateien ... auch mit anderen versucht ... anscheinend sollen Sie close accesswie unten angegeben verwenden

Antworten (1)

Dieses Skript funktioniert bei mir, getestet auf MacOS Sierra und Pages Version 6.0.5

set mfolder to "Macintosh HD:Users:me:Documents:convertme:"
set destFolder to "Macintosh HD:Users:me:Documents:converted:"

tell application "Finder" to set theNames to name of files of folder mfolder

tell application "Pages"
    repeat with aName in theNames
        set theDoc to open ((mfolder & aName) as alias)
        set newFile to destFolder & (text 1 thru -7 of aName) & ".txt" -- concat destFolder and the name without the ".pages" extension 
        my makenewFile(newFile)

        export theDoc to file newFile as unformatted text
        close theDoc
    end repeat
end tell

on makenewFile(thePath)
    close access (open for access thePath)
    -- delay 0.5 -- use the delay command, If you still have a permission issue,  increase the number of seconds
end makenewFile
Cool! Anscheinend kommt dies durch das seltsame Berechtigungsproblem - "Zugriff schließen (für Zugriff auf thePath öffnen)".