0 votes

Utilisation d'Automator pour enregistrer du texte dans un fichier texte SPÉCIFIÉ (et non dans un nouveau fichier)

Je sais qu'il existe un moyen d'utiliser Automator pour enregistrer du texte dans un nouveau fichier texte.

Mais je veux une application Automator qui enregistre le texte du presse-papiers dans un fichier texte DONNÉ (en le modifiant, c'est-à-dire en ajoutant la ligne suivante). Applescript serait également acceptable. Existe-t-il un moyen de faire cela ?

1voto

user3439894 Points 52496

Vous pourriez utiliser un Automator flux de travail/application en utilisant un Exécuter le Shell script action avec :

/usr/bin/pbpaste >> '/path/to/filename.txt'
echo >> '/path/to/filename.txt'

Notes :

Consultez la page du manuel pour : pbpaste

Vous pouvez lire le page de manuel pour command en Terminal en tapant command puis cliquez à droite dessus et sélectionnez : Ouvrir la page de l'homme

El echo >> '/path/to/filename' ajoute une seule ligne alimentation en ligne à la fin de la fichier après le texte collé. Vous pouvez ajouter des lignes supplémentaires pour plus flux de lignes si vous le souhaitez.

En lieu et place de la echo commande vous pouvez également utiliser, par exemple :

printf '\n' >> '/path/to/filename.txt'

L'ajout de \n pour plus flux de lignes par exemple '\n\n' .

Si vous mettez à jour le fichier pendant qu'il est ouvert, il n'affiche pas le contenu mis à jour, vous devez fermer/réouvrir l'application fichier pour voir les mises à jour supplémentaires.


enter image description here


Si vous voulez le faire avec AppleScript alors à la place du Exécuter le Shell script action utiliser un Exécuter AppleScript action avec les éléments suivants exemple AppleScript code wish utilise une méthode légèrement modifiée manipulateur de Lecture et écriture de fichiers :

set myFilename to (path to documents folder) & "Clipboard Text.txt"

set cbText to ((the clipboard) as text) & linefeed & linefeed

writeTextToFile(cbText, myFilename, false)

on writeTextToFile(theText, theFile, overwriteExistingContent)
    try
        -- Convert the file to a string
        set theFile to theFile as string
        -- Open the file for writing
        if theFile contains "/" then
            set theOpenedFile to open for access theFile with write permission
        else
            set theOpenedFile to open for access file theFile with write permission
        end if
        -- Clear the file if content should be overwritten
        if overwriteExistingContent is true then set eof of theOpenedFile to 0
        -- Write the new content to the file
        write theText to theOpenedFile starting at eof
        -- Close the file
        close access theOpenedFile
        -- Return a boolean indicating that writing was successful
        return true
        -- Handle a write error
    on error
        -- Close the file
        try
            close access file theFile
        end try
        -- Return a boolean indicating that writing failed
        return false
    end try
end writeTextToFile

Notes :

El manipulateur à partir du lien Apple a été modifié pour prendre en charge les deux POSIX y HFS+ chemins de fichiers .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X