[ID CS4-CS6] Заменить пути к линкам по маске

  • Автор темы Автор темы redfish
  • Дата начала Дата начала

redfish

Участник
Топикстартер
Сообщения
9
Реакции
0
Здравствуйте! Подскажите, пожалуйста, есть ли решение такой проблемы:
имеется большой каталог с огромным количеством прилинкованных изображений.
Изображения хранятся на сервере в общей папке проекта и как правило все они называются либо 003.tiff, либо 0003.tiff. Разница только в пути к файлу через множество вложенных папок, например H:\A-14\3D\проект5\корпус\внешний\артикул158779\001.tiff. И вот в какой-то момент меняется имя диска и главной папки. Было H:\A-14\3D\ стало G:\A-14\3-D\.
Вопрос - как в индизайне заменить это в линках автоматом? В каталоге 8 индизайновских файлов, в каждом по 200-300 линков....
 
Возможно, это поможет?
 
  • Спасибо
Реакции: redfish
Возможно, это поможет?
Это я уже попробовала:) Тут дело в том что заменить надо не часть имени файла, а часть пути к файлу:((
Я пробовала заменить в скрипте var ffname =, но мне кажется там нельзя прописать именно путь со слешами... скриптописец из меня никакой...
 
Это я уже попробовала:) Тут дело в том что заменить надо не часть имени файла, а часть пути к файлу:+((
Я пробовала заменить в скрипте var ffname =, но мне кажется там нельзя прописать именно путь со слешами... скриптописец из меня никакой...
прошу прощения за странный смайлик
 
С этого момента по подробнее - разве путь это не часть имени?
 
Я не очень в курсе внутренней логики скриптов:) мне бы готовое решение с кнопочкой
Но вот как я пыталась действовать
запускаю shutterLink - он пишет "не обнаружено связанных фалов имя которых начинается на "stock-photo". Ок, у меня таких и нет.
В скрипте нахожу "stock-photo"
var ffname = 'stock-photo';
меняю на var ffname = 'H:\A-14\3D ';

и получаю вот что
shutterLink.jpg


т.е. слеши, двоеточия и прочие части именно пути не воспринимаются
 
Экранируйте обратный слэш - \\
 
не работает:(
только теперь в окне с отказом пишет правильный путь со всеми слешами:), но по прежнему ничего не находит
 
А они точно там есть именно в таком написании?
 
да, я специально копировала начало пути из палитры Links - Copy full path
 
так "H:\..." ведь уже не существует? Там случайно не новый путь уже надо указывать?
 
так это его "снаружи", на сервере не существует
а индизайн именно поэтому пути его искать пытается...
 
JavaScript:
function main () {
    if (app.documents.length == 0) {
        return false;
    }
    var doc = app.activeDocument;
    var find = 'H:\\A-14\\3D';
    var change = 'G:\\A-14\\3-D';
    var links = doc.links.everyItem().getElements();
    for (var i = 0; i < links.length; i++) {
        var link = links[i];
        if (link.filePath.toString().indexOf(find) != -1) {
            var fpath = link.filePath.toString().replace(find, change);
            var file = File(fpath);
            if (file.exists) {
                link.relink(file);
            }
        }
    }
}

main();
 
JavaScript:
function main () {
    if (app.documents.length == 0) {
        return false;
    }
    var doc = app.activeDocument;
    var find = 'H:\\A-14\\3D';
    var change = 'G:\\A-14\\3-D';
    var links = doc.links.everyItem().getElements();
    for (var i = 0; i < links.length; i++) {
        var link = links[i];
        if (link.filePath.toString().indexOf(find) != -1) {
            var fpath = link.filePath.toString().replace(find, change);
            var file = File(fpath);
            if (file.exists) {
                link.relink(file);
            }
        }
    }
}

main();



получилось!!!!
Спасибо огромное!!!!!! Лучший подарок на новый год:)))
 
так его или физически не существует, или сервер выключен?
сервер работает и файл на месте, но из-за переименования самой верхней папки путь к файлу теперь другой (не тот который показывает в палитре Links)
 
Ещё один способ:
1. экспортируем в idml
2. распаковываем
3. меняем в блокноте поиском и заменой Spreads\Spread_хх.xml
(в windows слеши обратные, в файле прямые и кодировки на кириллице могут слететь)
4. запаковываем.

Всё это можно сделать в тотал-коммандере шоткатами:
Ctrl+PageDown по файлу, входим внутрь,
F4, открываем редактор
Ctrl+H меняем пути
сохраняем
тотал перепаковывает файл.
 
Последнее редактирование:
  • Спасибо
Реакции: ~RA~
Вроде как, тут было мнение, что сейчас idml обратно не так просто упаковать
 
Редактирование idml в таких случаях -- это как полостная хирургия при несварении.
 
  • Спасибо
Реакции: NNN5 и ~RA~
Был скрипт готовый под это дело в интернете можно найти. Change pass of links.... Что-то типа того. Когда-то сделал для него ещё и пакетный вариант.