unix命令结果变量 - char*

har*_*ari 2 c char

如何将"pwd"(或该情况下的任何其他命令)结果(当前工作目录)分配给char*变量?

命令可以是任何东西.不仅限于"pwd".

谢谢.

Jer*_*fin 6

从开始popen.这将允许您运行一个命令,其标准输出指向FILE *您的父级可以读取的.从那里,它只是一个阅读它的输出就像你将任何正常的文件物质(例如,用fgets,getchar等)

但是,一般情况下,您更愿意避免为此运行外部程序 - 您应该可以getcwd使用,这样可以更直接地提供相同的结果.


She*_*ley 5

为什么不打电话getcwd()?它不是C标准库的一部分,但它 POSIX,并得到了广泛的支持.

无论如何,如果pwd只是一个例子,看看popen().这将运行一个外部命令,并为您提供一个文件*,用于读取其输出.