Добрый лень!
Столкнулся с необходимостью преобразовать в баше все файлы типа less в файлы типа css в определенной папке.
Для этого используется утилита lessc в таком виде: lessc styles.less styles.css (где первый файл - источник, второй - назначение).
Для начала ищу все файлы: find . -name *lk.less (для отладки в текущей папке и по точному имени, чтобы отработать на одном файле).
А вот дальше начинаются проблемы.
хотел использовать ключ find -exec и передать туда lessc, но синтаксис не позволил правильно использовать имя файла. максимум, что можно сделать - это find . -name *lk.less -exec lessc {} {}.css \;
но тогда на выхлопе будет файл lk.less.css вместо lk.css
потом думал сделать двумя командами и первой положить хотя бы путь (потому что find отдаёт полный путь к файлу и в самом find распарсить он его не дал) в переменную.
но не тут то было. и "find . -name *lk.less | pathfile=", и "pathfile = find . -name *lk.less" кладут на это дело болт.
далее пробовал всякие дикие варианты типа передачи пути и парсинга последовательно через пайплайн (find . -name *lk.less -exec echo {} \; | grep [a-z]* | echo) но видимо я не дло конца понимаю смысл пайплайна. потому что если после первого ещё выходит что то осмысленное, то после второго - только пустая строка.
Помогите достичь цели!