私のCプログラムでは、子プロセスを作成し、子でexecvpを実行しています。しかし、execvpコマンド(エラーが発生した場合)のために、エラーメッセージを別のメッセージに変更しようとしています。
それが戻った場合、それはエラーであったことを私は知っています、そして私は次の行に私自身のカスタムエラーメッセージを印刷することができます。これは発生する可能性のあるエラーの1つのタイプです。たとえば、execvpにコマンド「sdfsd」を指定すると発生します。この部分は私のために働いています。
しかし、「find sdfsd」と入力すると、返されず、「find: `sdfsd':そのようなファイルまたはディレクトリはありません」と出力されます。
このメッセージ(および基本的にexevcpからのあらゆる種類のエラーメッセージ)を自分のカスタムメッセージに変更したいと思います。
dup2を使用してこれを行うことができると思いますが、方法がわかりません...
子プロセスで私は試しました
dup2(STDERR_FILENO, 1);
fclose(stderr);
ただし、これにより、子プロセスがエラーメッセージを書き込むのを防ぐことができます。それでも、すべての場合に自分のメッセージを印刷することはできません。
誰かがこれを行う方法を知っていますか?ありがとう