c - 如何使用 C 函数执行 Shell 内置命令?

标签 c shell command exec pwd

我想通过 execv() 之类的 C 语言函数来执行 Linux 命令“pwd”。

问题是没有名为“pwd”的可执行文件,我无法执行“echo $PWD”,因为 echo 也是一个内置命令,找不到可执行文件。

最佳答案

如果你只是想在你的c程序中执行shell命令,你可以使用,

   #include <stdlib.h>

   int system(const char *command);

在你的情况下,

system("pwd");

问题是没有名为“pwd”的可执行文件,我无法执行“echo $PWD”,因为 echo 也是一个没有找到可执行文件的内置命令。

这是什么意思?您应该能够在 /bin/

中找到提到的包
sudo find / -executable -name pwd
sudo find / -executable -name echo

关于c - 如何使用 C 函数执行 Shell 内置命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19209141/

相关文章:

string - Emacs重复字符串n次

c - 在 R 控制台中添加库

linux - 修剪 ';' 并按 ":"拆分

bash - 如何打印匹配 grep 模式的文件的文件详细信息

vim - linux 上 <D> 的默认键绑定(bind)是什么? Mac有这个绑定(bind)到Command

android - android安装apk的问题

c++ - 在没有 GUI 设计器的情况下实现 GUI 的最佳方法是什么?

c - c语言显式类型转换

c - 汇编 如何将 REP STOS 转换为 C 代码

linux - 从输入(sshpass?)在多个本地服务器上执行 SSH remote cmd exec