如何将命令行参数从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!