Ich habe zwar kein Domino auf Linux oder nen Unix, aber es ist logisch, dass hier der "Shell" sich unterscheided auf beiden Betriebssystemen:
Auf Windows wird es vermutlich mit dem API-Befehl "Shell", der den Befehl "CreateProcess" aufruft, der angegebene String als Anwendung gestartet. Hierbei setzt Windows automatisch einen neuen Prozess auf, der unabhänig vom Vorgänger ausgeführt wird (Fehlende Hierachieverwaltung unter Windows...)
Unter Linux, wird vermutlich einer der "exec()"-Syscalls aufgerufen, der nicht automatisch in einem eigenen Prozess gestartet wird. Um einen neuen Prozess auszuführen wird zusätzlich noch "fork()" benötigt!
Vielleicht läuft "shellID" unter Unix wirklich anders? Da nur eine neue Prozess-ID bei einem Fork erzeugt wird?! (Oder wenn nicht, wird nur die ID des aktuellen Prozesses zurückgegeben...)
Wenn es damit nicht geht, funktioniert ggf. folgendes:
Shell("/usr/bin/perl /path/to/script.pl &")
Oder falls hier keine "normale" shell dahinterliegt, dass vielleicht es so läuft:
Shell(|/usr/bin/bash "/path/to/script.pl &"|)
Wenn nicht, versuch auch mal das & hinter dem letzten Anführungszeichen?!
Bitte gib feedback, was und obs funktioniert! Danke!
Ich wünsche ein schönes Wochenende!
Chris