-post-analysis-command
)Задайте команду или скрипт, который будет выполняться после анализа
Задайте команду или скрипт, который будет выполняться после анализа.
Пользовательский интерфейс (только десктопные решения): В вашей настройке проекта опция находится на узле Advanced Settings.
Командная строка: Используйте опцию -post-analysis-command
. Смотрите информацию о Командной строке.
Создайте скрипты для задач, которые вы хотите выполняемый после анализа Polyspace®.
Например, вы хотите быть уведомленными по электронной почте, что анализ Polyspace закончен. Создайте скрипт, который посылает электронное письмо, и используйте эту опцию, чтобы выполнить скрипт после анализа Polyspace.
Никакое значение по умолчанию
Введите полный путь в команду или скрипт или нажатие кнопки, чтобы перейти к местоположению команды или скрипта. После анализа выполняется этот скрипт.
Для скрипта Perl, в Windows®, задают полный путь к исполняемому файлу Perl, сопровождаемому полным путем к скрипту. Например, чтобы задать скрипт Perl send_email.pl
, который посылает электронное письмо однажды анализ, закончен, введите
. Здесь, polyspaceroot\sys\perl\win32\bin\perl.exe <absolute_path>\send_email.pl
является местоположением текущей установки Polyspace, такой как polyspaceroot
C:\Program Files\Polyspace\R2019a\
, и <absolute_path>
является местоположением скрипта Perl.
Если вы выполняете верификацию на удаленном сервере, после того, как верификация, программное обеспечение выполнит вашу команду на сервере, не на клиентском рабочем столе. Если ваша команда выполняет скрипт, скрипт должен присутствовать на сервере.
Например, если вы задаете команду, /local/utils/send_mail.sh
, Сценарий оболочки, send_email.sh
должен присутствовать на сервере в /local/utils/
. Программное обеспечение не копирует скрипт send_email.sh
с вашего рабочего стола на сервер прежде, чем выполнить команду. Если скрипт не присутствует на сервере, вы сталкиваетесь с ошибкой. Иногда, существует несколько серверов, что Планировщик MATLAB® Job может работать на верификации. Поместите скрипт в каждый из серверов, потому что вы не управляете, какой сервер в конечном счете запускает вашу верификацию.
Чтобы протестировать использование этой опции, запустите следующий скрипт Perl от папки, содержащей проект Polyspace (файл .psprj
). Скрипт анализирует последний файл журнала Polyspace в папке Module_1\CP_Result
и пишет текущее название проекта и дату к файлу report.txt
. Файл сохранен в Module_1\CP_Result
.
foreach my $file (`ls Module_1\\CP_Result\\Polyspace_*.log`) { open (FH, $file); while ($line = <FH>) { if ($line =~ m/Ending at: (.*)/) { $date=$1; } if ($line =~ m/-prog=(.*)/) { $project=$1; } } } my $filename = 'report.txt'; open(my $fh, '>', $filename) or die "Could not open file '$filename' $!"; print $fh "date=$date\n"; print $fh "project=$project\n"; close $fh; |
В Linux® можно задать скрипт Perl для этой опции.
В Windows, вместо того, чтобы задать скрипт Perl непосредственно, задают файл .bat
, который вызывает Perl и запускает этот скрипт. Например, файл .bat
может содержать следующую строку (принимающий, что файл .bat
и файл .pl
находятся в папке проекта Polyspace). В зависимости от вашей установки MATLAB измените путь к perl.exe
соответственно.
"C:\Program Files\MATLAB\R2018b\sys\perl\win32\bin\perl.exe" command.pl |
Запустите Программу автоматического доказательства Кода. Проверяйте, что папка Module_1\CP_Result
содержит файл report.txt
с названием проекта и датой.
Параметр: -post-analysis-command |
Значение: Путь к исполняемому файлу или команде в кавычках |
Никакое значение по умолчанию |
Пример в Linux (средство поиска ошибки):
|
Пример в Linux (программа автоматического доказательства кода):
|
Пример в Linux (сервер средства поиска ошибки):
|
Пример в Linux (сервер программы автоматического доказательства кода):
|
Пример в Windows:
|
Обратите внимание на то, что в Windows, вы используете полный путь для исполняемого файла Perl.