2 votes

Le Finder va au presse-papiers

Je voudrais créer un script d'Apple qui utilisera un chemin de texte dans le presse-papiers et ouvrira une nouvelle fenêtre du Finder et ira à ce chemin.

5voto

Igor Zelaya Points 2266

Si vous pouvez utiliser le Terminal, faites

open "`pbpaste`"

4voto

En supposant que le presse-papiers contient une chaîne de caractères de la forme /Users/username/path/to/file cela devrait fonctionner :

tell application "Finder" to reveal (get the clipboard as string) as POSIX file

L'utilisation du verbe reveal garantit que, si un chemin d'accès à un fichier est fourni, le Finder affichera ce fichier dans le dossier qui le contient plutôt que de lancer une application pour ouvrir le fichier. Si cela n'est pas souhaitable, remplacez reveal con open .

2voto

wch1zpink Points 6067

Pour aller plus loin, ce n'est pas tout à fait une solution directe, mais elle intègre la solution directe dans un ensemble plus large de commandes. Le code AppleScript suivant copiera dans le presse-papiers les chemins POSIX de l'élément ou des éléments actuellement sélectionnés dans le Finder, uniquement si le Finder est l'application principale. Dans le cas contraire, il copiera dans le presse-papiers le texte en surbrillance (qui serait un chemin d'accès à un fichier de style HFS ou POSIX) de la fenêtre actuelle de l'application la plus en vue, et révélera l'élément dans le Finder.

J'ai enregistré ce code AppleScript sous le nom de "Copy File Paths From Finder Or Go To Folder.scpt" dans mon dossier /Users/Mon nom court/Bibliothèque/scripts/, ce qui le rend disponible pour être utilisé à partir de n'importe quelle application, en le sélectionnant dans le menu scripts de la barre de menu.

Je trouve cette solution beaucoup plus pratique que l'utilisation de la commande "Aller au dossier" intégrée au Finder.

tell application "Finder" to set finderIsFrontmost to frontmost

if finderIsFrontmost then
    -- Copy Selected Files In Finder, As Path Names
    tell application "System Events" to keystroke "c" using {option down, command down}
else
    -- Copy Selected File Path Text In Frontmost App (HFS or POSIX Style Paths)
    tell application "System Events" to keystroke "c" using {command down}
    delay 0.1
    -- The "-R" Reveals Copied File Path In Finder, Rather Than Opening If It's A Path To A File
    try
        do shell script "open -R " & quoted form of (the clipboard)
    on error
        try
            do shell script "open -R " & quoted form of POSIX path of (the clipboard)
        on error errMsg number errNum
            display alert errMsg message ¬
                "Either The File Or Folder No Longer Exists" & linefeed & linefeed & "OR" & linefeed & linefeed & ¬
                "The Selected Text Contains Starting Or Trailing White Spaces" & linefeed & linefeed & ¬
                "Please Make Sure Your Selected Text Has No Empty Spaces At The Beginning Or End Of Your Selection" as critical buttons {"OK"} giving up after 20
        end try
    end try
end if

enter image description here


enter image description here

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