編寫Linux下的應(yīng)用程序時(shí)有時(shí)需要調(diào)用Linux的相關(guān)shell腳本,在這些腳本中通過調(diào)用Linux的相關(guān)函數(shù)實(shí)現(xiàn)對應(yīng)的功能。比如使用ifconfig配置本地的IP地址,采用這種方式省去了自己編寫應(yīng)用程序去實(shí)現(xiàn)的麻煩。
Linux常見調(diào)用shell腳本的方式有三種,網(wǎng)上說明很多,最簡單的是使用system調(diào)用shell文件,下午中就是采用這種做法。
1、編寫應(yīng)用程序
這里以配置IP地址舉例,在應(yīng)用程序中設(shè)置了IP地址,最后通過參數(shù)傳入shell文件
void config_ip(unsigned int slot)
{
charcmdline[100];
intip1,ip2,ip3,ip4;
ip1=192;
ip2=168;
ip3=100;
ip4=200;
sprintf(cmdline,“shipaddr.sh %d %d %d %d”,ip1,ip2,ip3,ip4);
system(cmdline);
}
2、編寫shell文件
Ipaddr.sh腳本文件如下:
#!/bin/sh
ifconfig eth0 $1.$2.$3.$4
echo “ip addr:$1.$2.$3.$4”
exit 12
執(zhí)行完以后通過ifconfig查看,發(fā)現(xiàn)IP已經(jīng)完成配置

如果傳遞的參數(shù)是字符串,可以這樣
Void Test()
{
charcmdline[100];
Char s1,s2;
s1=192;
s2=168;
strcpy(cmdline,“can.sh”);
strcat(cmdline,“”);
strcat(cmdline,ip1);
strcat(cmdline,“”);
strcat(cmdline,ip2);
system(cmdline);
}
-
Linux
+關(guān)注
關(guān)注
88文章
11582瀏覽量
217234 -
Shell
+關(guān)注
關(guān)注
1文章
373瀏覽量
25050
發(fā)布評論請先 登錄
啟動(dòng)Redis的三種方法
解決電池問題有三種方法
linux c使用system調(diào)用shell腳本
Linux中shell腳本執(zhí)的4種方式
Linux Shell腳本經(jīng)典案例分享

Linux常見調(diào)用shell腳本的三種方法
評論