我有一個使用rsh獲取文件的inode編號的小型客戶端程序。我面臨的問題是rsh命令正在執行,但沒有輸出被父節點讀取。通過程序獲取rsh輸出
如果我運行任何命令讓我們說本地執行的「ls」,我可以看到輸出。
/* Child */
close pipe[0];
dup2(pipe[1],STDOUT_FILENO);
execv("/usr/bin/rsh","ls","-i","a.txt");
/* Parent */
close pipe[1]
bytes = read pipe[0]
/* bytes always is 0. But if I have ls executed by child,
* I can see full output */