当前位置:  技术问答>linux和unix

shell和c之间的变量传递问题,请教!

    来源: 互联网  发布时间:2015-05-30

    本文导语:  想写个东西,主要用c和shell混合写,c调用shell,可不清楚怎么将shell得到的变量值传递给c程序,用system函数吗? | 如果是程序参数,那么liqi(sniper) 已经说的很明白了 如果是环境变量,你需要...

想写个东西,主要用c和shell混合写,c调用shell,可不清楚怎么将shell得到的变量值传递给c程序,用system函数吗?

|
如果是程序参数,那么liqi(sniper) 已经说的很明白了
如果是环境变量,你需要注意了。

你自己的程序是shell创建的一个子进程,会继承shell的环境参数,
但是临时的变量是不继承的。(比如说你用的bsh)
#export NAME0=ok
#NAME1=wrong
#{exec}
对与exec这个程序来说,NAME0他是具有的,而NAME1是不存在的。

对与一个已经存在的环境变量用一下函数取得
#include 
char* getenv(const char* env_name)

|
main(int argc ,char **argv)

这是C的主函数,argc是命令行参数的个数,argv是命令行!

例:
myprogram arg1 arg2

在主函数中argc = 3
argv[0] = myprogram也就是你的程序名了
argv[1] = "arg1"
argv[2] = "arg2"

|
用System调用Shell,然后判断System的返回值,至于返回值的具体含义,你自己看man吧

|
支持passingguy的方法,简单方便,至于用文件交换数据有些小题大作了吧:)

|
楼主是不是问过这个问题?用popen执行shell脚本,脚本里用echo输出变量。

    
 
 

您可能感兴趣的文章:

  • shell变量和子shell的问题请教
  • shell编程,如何将变量中的环境变量转换为绝对值
  • 怎么查看自己的shell的环境变量,和root的环境变量,solaris系统
  • 子shell改变父shell定义变量的值
  • gdb下用shell写环境变量的问题
  • 关于shell变量传递问题?
  • 如何查看当前shell的所有环境变量?
  • 请问如何在C语言中获得shell 变量
  • 请教个shell环境变量的问题
  • Shell编程中如何获取环境变量中设置的路径
  • C语言调用shell脚本后,通过何种方法能获取脚本中变量的值
  • [linux shell] 如何获得以一个变量的值为名的变量的值
  • 请问一个关于shell变量的简单问题
  • 急急急!!!!!!用B shell如何实现截取变量的子串?
  • unix shell中能否将后台运行程序的输出保存到变量中?
  • 程序中如何使用setenv或者export配置环境变量在当前shell生效
  • 为什么我的系统看不到shell,home变量?
  • 怎样用shell读取properties里面某个键对应的值,再赋值给shell中的变量
  • redhat7.2下怎么在shell文件中以变动日期做为变量?急!!
  • (急)shell,sed 关于参数的传递 iis7站长之家
  • 请教一个 shell 问题,我用下面这个 shell 语句总是失败,请教
  • 请教 一个shell问题 如何通过shell获得一个日志文件中的增量部分
  • 请教一个shell编程的问题,就是如何在shell编程中读一个文件的内容?谢谢啦!
  • 请教shell脚本启动程序
  • 请教两个shell
  • 新手请教Shell学习问题
  • 请教shell的问题,比较难。
  • 请教shell脚本中ls -la >ls.log <<!,中的"<<!"是什么意思?
  • 请教一个问题 关于Shell的
  • 高分请教关于Shell脚本执行中断问题?
  • 请教一个shell问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C调用shell时,能否给shell传递参数
  • 急!如何从一个shell文件中传递一个参数到sql文件中,不能用存储过程
  • Shell脚本调用Sql脚本并向其中传递变量
  • (急)shell,sed 关于参数的传递
  • 如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)
  • shell脚本,参数传递,应该是字符转义问题.
  • shell中读取文件后的变量不能传递出来吗?
  • 如何在C中调用linux shell脚本并传递参数?
  • nohup执行的shell脚本,全局变量不能传递到脚本中使用吗?
  • shell while循环内的变量在循环外部值不能传递
  • shell脚本的函数参数传递问题
  • python和shell变量互相传递的几种方法
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 请问“当前shell”和“子shell”的区别?
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3