mknod() コマンドを使用して FIFO 名前付きパイプを作成しようとしています。
int main() {
char* file="pipe.txt";
int state;
state = mknod(file, S_IFIFO & 0777, 0);
printf("%d",state);
return 0;
}
しかし、ファイルは現在のディレクトリに作成されません。で並べてみましたls -l
。状態は -1 を返します。
ここや他のサイトで同様の質問を見つけ、最も提案された解決策を試しました。
int main() {
char* file="pipe.txt";
int state;
unlink(file);
state = mknod(file, S_IFIFO & 0777, 0);
printf("%d",state);
return 0;
}
ただし、これは違いはなく、エラーは残ります。ここで何か間違ったことをしていますか、それともこの問題を引き起こしている何らかのシステム介入がありますか?
助けて..よろしくお願いします