Показаны сообщения с ярлыком Qt Installer. Показать все сообщения
Показаны сообщения с ярлыком Qt Installer. Показать все сообщения

среда, 6 февраля 2019 г.

Qt Installer: удаление по маске

Qt Installer не умеет удалять файлы по маске.
Нельзя просто так взять и написать
 component.addOperation("Execute", "rm", "-f", "files*");
Это не сработает. Это обходится вызовом командного интерпретатора

Для Windows
      component.addOperation("Execute", "cmd.exe", "/C", "del", "files*.*");

Для Linux
      component.addOperation("Execute", "bash", "-c", "rm -f files*");
Последний параметр для Linux надо писать целиком, не разделяя на части. В этом случае Qt Installer при вызове обернет команду кавычками и результат будет как если бы вы вызвали команду
bash -c "rm -f files*" 

вторник, 5 февраля 2019 г.

Qt Installer: replace

Qt Installer использует скриптовый язык ECMAScript (http://doc.qt.io/qt-5/ecmascript.html)
По структуре он схож с JavaScript, но полностью они не пересекаются.
Но решения можно искать и по JavaScript.
Например, функция replace меняет только первое вхождение в строку.
var str = "bla-bla-bla";
str.replace("bla", "vobla");
Получим vobla-bla-bla.
Чтобы заменить все вхождения, надо использовать регулярку.
str.replace(/bla/g, "vobla");