2012-05-16 2 views

ответ

30

Найдено это сам, это $.fileName

Для имени папки, это (new File($.fileName)).parent

+0

Подтверждено! Благодаря! – bgmCoder

+1

FYI (если кто-то следит), путь к папке возвращается * без * любого трейлинг-обратного слэша, и он уже находится в формате extendscript, например: '/ c/some% 20folde% 20with% spaces/some/folder' -but сценарию это нравится. – bgmCoder

+1

Могу я уточнить: '$ .fileName' возвращает абсолютный путь к текущему исполняемому скрипту **, а не открытому файлу (например, файл .ai, который вы редактируете в Illustrator). – caiosm1005

0

Если необходимо ссылаться на файлы по отношению к активному документу можно использовать app.activeDocument.filePath.

+1

Обратите внимание, что это относится к Photoshop. $ .filename работает во всех приложениях. –

+1

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

2

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

по существу:

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);

мим,

+0

мертвая ссылка, хорошо, что вы добавили выдержку самостоятельно –

+0

Эй, спасибо за головы, Тобиас, я исправил ссылку –

0

app.activeScript.parent должен сделать трюк - обратите внимание, что если вы используете ссылку окна файл, вы получить действительный место для сценария, а не один из .lnk-файла.

Смежные вопросы