如何将命令行参数从C程序传递给bash脚本?

我写了一个bash脚本,现在我从C程序调用这个脚本。 现在我想从命令行将参数,即argv[1]argv[2]传递给脚本。

这取决于脚本的调用方式。 例如,如果您正在使用system ,则可以预先格式化用于从系统调用添加命令行参数调用bash脚本的字符串:

C

 #include "stdio.h" void main(int argc, char const *argv[]) { if (argc == 2) { char command[100] = {0}; sprintf(command, "./example.sh %s", argv[1]); system(command); } } 

巴什

 #!/bin/bash echo $1 

结果是

 $ gcc example.c -o example && ./example Hello! Hello!