-post-analysis-command)Укажите команду или сценарий для выполнения после анализа
Укажите команду или сценарий для выполнения после анализа.
Пользовательский интерфейс (только для настольных ПК): в конфигурации проекта этот параметр находится в узле Дополнительные настройки.
файл командной строки и параметров: Использовать параметр -post-analysis-command. См. раздел Сведения о командной строке.
Создайте сценарии для задач, которые необходимо выполнить после анализа Polyspace ®.
Например, вы хотите получить по электронной почте уведомление о том, что анализ Polyspace завершен. Создайте сценарий, отправляющий сообщение электронной почты, и используйте этот параметр для выполнения сценария после анализа Polyspace.
По умолчанию нет
Введите полный путь к команде или сценарию или щелкните
для перехода к местоположению команды или сценария. После анализа этот сценарий выполняется.
Сценарий выполняется в папке результатов Polyspace. В сценарии рассматривайте папку результатов как текущую папку для относительных путей к другим файлам.
Для сценария Perl в Windows ® укажите полный путь к исполняемому файлу Perl, а затем полный путь к сценарию. Например, чтобы указать сценарий Perlsend_email.pl который отправляет электронное письмо после завершения анализа, введите . Здесь, polyspaceroot\sys\perl\win32\bin\perl.exe <absolute_path>\send_email.pl - местоположение текущей установки Polyspace, например, polyspacerootC:\Program Files\Polyspace\R2019a\, и <absolute_path> - местоположение скрипта Perl.
Если проверка выполняется на удаленном сервере, после проверки программное обеспечение выполняет команду на сервере, а не на рабочем столе клиента. Если команда выполняет сценарий, он должен присутствовать на сервере.
Например, если указать команду, /local/utils/send_mail.sh, сценарий Shell send_email.sh должен присутствовать на сервере в /local/utils/. Программа не копирует сценарий send_email.sh с рабочего стола на сервер перед выполнением команды. Если скрипт отсутствует на сервере, возникает ошибка. Иногда существует несколько серверов, на которых планировщик заданий MATLAB ® может выполнять проверку. Разместите сценарий на каждом из серверов, поскольку вы не контролируете, на каком сервере в конечном итоге будет выполняться проверка.
Чтобы проверить использование этого параметра, запустите следующий сценарий 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 (Bug Finder):
polyspace-bug-finder -sources |
Пример в Linux (Code Prover):
polyspace-code-prover -sources |
Пример в Linux (сервер поиска ошибок):
polyspace-bug-finder-server -sources |
Пример в Linux (сервер проверки кода):
polyspace-code-prover-server -sources |
Пример в Windows:
polyspace-bug-finder -sources |
Обратите внимание, что в Windows используется полный путь к исполняемому файлу Perl.