2012-05-16 27 views

risposta

30

trovato me stesso, è $.fileName

Per il nome della cartella, è (new File($.fileName)).parent

+0

Confermato! Grazie! – bgmCoder

+1

FYI (se qualcuno sta seguendo), il percorso della cartella viene restituito * senza * qualsiasi backsl finale, ed è già in formato estensibile, ad esempio: '/ c/some% 20folde% 20with% spaces/some/folder' -ma la sceneggiatura piace questo. – bgmCoder

+1

Potrei chiarire: '$ .fileName' restituisce il percorso assoluto dello ** script di esecuzione corrente **, non il file aperto (ad esempio il file .ai che stai modificando in Illustrator). – caiosm1005

0

Se è necessario fare riferimento file in relazione al documento attivo è possibile utilizzare app.activeDocument.filePath.

+1

Nota questo è specifico di Photoshop. $ .filename funziona su tutte le app. –

+1

'app.activeDocument' ≠' app.activeScript' –

2

I wrote an article about this you may find helpful, :)

essenzialmente:

var myPath = (app.activeDocument.fullName.parent.fsName).toString().replace(/\\/g, '/'); 
 
var myScriptPath = (File(app.activeScript.fullName).parent.fsName).toString().replace(/\\/g, '/'); 
 

 
alert('Document path is: ' + myPath + ' , and script path is: ' + myScriptPath);

mim,

+0

link non funzionante, buona cosa hai aggiunto tu stesso l'estratto –

+0

Hey grazie per l'avviso di Tobias, ho corretto il link –

0

app.activeScript.parent dovrebbe fare il trucco - notare che se si utilizza un collegamento di file di Windows, è ottenere la posizione dello script effettiva , non quello del file .lnk.

Problemi correlati