Как перенаправить информацию типа "Aborted (core dumped)" при выполнении "./a.out" - PullRequest
1 голос
/ 14 января 2020

Существует файл .out, который будет вызывать Aborted (core dumped) информацию при запуске.

Я хочу поместить эту информацию Aborted (core dumped) в файл.

Я хочу поместить ее в моей программе на самом деле, но у меня проблема с перенаправлением. Как только эта проблема решена, я могу поместить ее в свою программу с помощью redirect и popen ().

Я пытаюсь ./a.out 2>file, но это не работает.

1 Ответ

1 голос
/ 15 января 2020

Перенаправление стандартной ошибки для a.out ничего не даст, поскольку a.out на самом деле не пишет сообщение Aborted (core dumped). Это сообщение написано самой оболочкой в ответ на ненормальное состояние, возвращаемое при вызове waitpid или аналогичного процесса.

Для получения та же информация программно, вам нужно проверить код выхода, который будет присутствовать в $?. Сигнал 11 (SIGSEGV) приведет к коду выхода 128 + 11 = 139; SIGABRT (сигнал 6) должен привести к коду выхода 134.

...