0
ls -alR | myprogram
如果有我无权访问的文件,它会显示一条错误消息,如“文件权限被拒绝”。但是如何在我的程序中检测到这个错误?我试图测试stderr
中是否有数据。但这似乎并不奏效。Linux C++文件权限被拒绝
ls -alR | myprogram
如果有我无权访问的文件,它会显示一条错误消息,如“文件权限被拒绝”。但是如何在我的程序中检测到这个错误?我试图测试stderr
中是否有数据。但这似乎并不奏效。Linux C++文件权限被拒绝
对于你的直接问题,你只是在这里管道标准输出。同时捕获输出和错误,这样做:
ls -alR 2>&1 | myprogram
见http://www.gnu.org/software/bash/manual/bashref.html#Pipelines从Bash的手册。
但是,目前尚不清楚为什么你想这样做。如果你想以编程方式做目录列表的东西,有比解析ls
的输出更好的方法来做到这一点。如果你编辑你的问题来描述你的总体目标,我可能会给出更具体的建议...
谢谢。我会在那里看看。 – user2226125
你只是在这里管道'stdout'。 –
你为什么要检测这个错误?你更大的目标是什么? – zwol
ls -alR 2>&1 | myprogram –