これらはUnix/Linuxに関連付けられており、使用方法によっては、システムよりも安全ではないことは間違いありませんが、fork
および一連の呼び出しを使用することを検討できます。execl
すべてのプラットフォームがこれを行うための異なる独自の方法を持っているという理由だけで、これを行うための一般的なクロスプラットフォームの方法を見つけることができるかどうかは非常に疑わしいです。また、実行しようとしているスクリプトは、プラットフォームごとに異なる必要があり、ディレクトリパスなどを指定する方法が異なる場合があります。
私の提案は、最初に次の質問にどのように答えるかを自問することです。これが私の主な関心事です。
- 偶発的/意図的な誤用を防ぐにはどうすればよいですか?
- 実行しているスクリプト内のエラーまたは成功ステータスをどのように検出しますか?
- 依存関係をどのように提供しますか?たとえば、スクリプトAは、スクリプトBを実行する前に、完全かつ正しく実行する必要があります。
- 成功と失敗の状態をどのように報告しますか。
私の最後の質問は、なぜこれをC++で実行したいのかということです。特定の理由はありますか?当然、私はC ++のエバンジェリストですが、もっと過激なことに着手しない限り、Perl、Python、場合によってはBashなどのスクリプト言語を使用した方がよいと思います。