In Terminale, posso trovare la cartella del Finder corrente?

2

Viene comunemente chiesto come ottenere un di finestra di Finder dal terminale. Sto chiedendo il contrario.

Vorrei un modo da riga di comando per determinare la directory di lavoro della finestra del Finder "corrente".

    
posta nosedog 20.01.2012 - 23:51
fonte

5 risposte

10

Il seguente comando restituirà il percorso alla finestra del Finder in primo piano, se è quello che stai cercando:

osascript -e 'tell application "Finder" to get the POSIX path of (target of front window as alias)'

Notare che questo non può restituire un percorso POSIX se la finestra in primo piano non ha un percorso POSIX. Quindi se la finestra del Finder in primo piano ha una ricerca continua / finita, c'è una cartella intelligente o un'altra posizione magica (come il tuo Mac sotto dispositivi, che elenca tutti i volumi montati e la rete).

Cerca / cartella Smart / La finestra No Finder restituisce:

execution error: Can’t make «class fvtg» of window 1 of application "Finder" into type alias. (-1700)

E cercando di eseguire il comando durante la visualizzazione del tuo Mac:

execution error: No result was returned from some part of this expression. (-2763)

    
risposta data 21.01.2012 - 00:29
fonte
3

pwd : stampa il nome della directory corrente / di lavoro

open . : apre la directory corrente nel finder

    
risposta data 21.01.2012 - 00:06
fonte
2

Questo ragazzo ha una grande risposta link

Definisci le due funzioni:

function ff { osascript -e 'tell application "Finder"'\
 -e "if (${1-1} <= (count Finder windows)) then"\
 -e "get POSIX path of (target of window ${1-1} as alias)"\
 -e 'else' -e 'get POSIX path of (desktop as alias)'\
 -e 'end if' -e 'end tell'; };\

function cdff { pushd "'ff $@'"; };

Dopodiché puoi digitare cdff su cd nella directory Finder.

    
risposta data 19.10.2012 - 01:50
fonte
1

Se stai usando zsh con oh-my-zsh la funzionalità richiesta è fornita dal osx-Plugin . Dopo aver attivato il plugin nel file di configurazione (di solito ~/.zshrc ) si può usare pfd per geht il percorso della finestra del cercatore corrente e cdf per inviarlo al cd.

    
risposta data 29.12.2012 - 19:54
fonte
0

insertion location è fondamentalmente l'obiettivo della finestra Finder 1 o desktop.

f() {
    cd "$(osascript -e 'tell app "Finder"
POSIX path of (insertion location as alias)
end')"
}

C'è un bug su 10.7 e 10.8 dove le proprietà di posizione di destinazione e inserimento si riferiscono alla seconda finestra in primo piano dopo l'apertura di una nuova finestra .

    
risposta data 19.10.2012 - 10:28
fonte

Leggi altre domande sui tag