2015-04-11 2 views
5

Я пытаюсь выполнить команду после сборки в CMake 3.1.1 с помощью:

ADD_CUSTOM_COMMAND(
    TARGET mytarget 
    POST_BUILD 
    COMMAND for i in `ls *` \; do echo \$i \; done \; 

Однако переменная $ я оценивается ничего, хотя я убегаю знак доллара. По бревнам команды оценивается в:

for i in `ls *` ; do echo ; done ; 

Я попытался без побега знака доллара, но это привело к той же проблеме. Двойная косая черта тоже не работала. Теперь я озадачен ...

Можете ли вы предложить способ запускать команду, которая использует знаки доллара?

P.S. Это был просто пример. Моя фактическая команда немного сложнее, и я не думаю, что смогу ее обработать, не используя знаки доллара.

+0

Попробуйте это: эхо \ '$ я' – Kavish

+0

Вот что я получаю: Синтаксическая ошибка в коде cmake на .../CMakeLists.txt: 210 при разборе строки \ '$ i' – Vyacheslav

+0

В bash нам нужно использовать -e вариант эха для перехода в действие. – Kavish

ответ

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