Launchd - стандартный вывод не регистрируется - PullRequest
0 голосов
/ 21 февраля 2019

Рассмотрим ситуацию ниже:

main.c

#include<stdio.h>
int main(){
    fprintf(stdout, "STDOUT: I belong to stdout\n");
    fprintf(stderr, "STDERR: I belong to stderr\n");
    return 0;
}

test.launchd.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>test.launchd.plist</string>
    <key>Program</key>
    <string>/path/to/the/compiled/binary</string>
    <key>RunAtLoad</key>
    <true/>
    <key>StandardErrorPath</key>
    <string>/tmp/err</string>
    <key>StandardInPath</key>
    <string>/tmp/in</string>
    <key>StandardOutPath</key>
    <string>/tmp/out</string>
    <key>WorkingDirectory</key>
    <string>/tmp</string>
</dict>
</plist>

Я получаю STDERR: I belong to stderr в файле / tmp / err , но не STDOUT: I belong to stdout в файле / tmp / out .Это известная ошибка или я что-то не так сделал?

Я использую macOS 10.14.4 beta 3.

...