免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5446 | 回复: 6
打印 上一主题 下一主题

【请教】 bash里调用csh的环境变量。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-09-14 12:17 |只看该作者 |倒序浏览
tool_setup.csh
----------------------------------
#!/bin/csh

       set path = (/apps/...../tools/bin $path)



run.bash
----------------------------------
#!/bin/bash

       source ./tool_setup.csh



运行  ./run.bash,  总是提示错误, 意思就是bash 中 set path 的语法不对, 可是文件tool_setup.csh中title有写#!/bin/csh

请问这种情况怎么解决, run.bash我还是想用bash写的。谢谢

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2010-09-14 12:30 |只看该作者
set path = (/apps/...../tools/bin $path)
语法不对吧?
set path = $path  /apps/bin

论坛徽章:
0
3 [报告]
发表于 2010-09-14 12:39 |只看该作者
回复 2# L_kernel


    语法是对的, 实际上在tool_setup.csh里还有  setenv AA_LICENSE_FILE  /apps/AA.lic 这样的语句。
    这些语句直接在source是没问题的,  只是在.bash的脚本里source就会有这问题。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
4 [报告]
发表于 2010-09-14 12:45 |只看该作者
回复  L_kernel


    语法是对的, 实际上在tool_setup.csh里还有  setenv AA_LICENSE_FILE  /apps/AA ...
dreamone503 发表于 2010-09-14 12:39



    source ./tool_setup.csh这一句改用csh ./tool_setup.csh
可能source的时候用bash的规则来解析后面的了。即使在tool_setup.csh中前面有#!/bin/csh,不太懂csh

论坛徽章:
0
5 [报告]
发表于 2010-09-14 13:17 |只看该作者
csh ./tool_setup.csh 不会再报错了

但是运行了之后, bash中的 which tool, 却找不到tool_setup.csh中定义的东西。

run.bash
------------------------
csh ./tool_setup.csh

which tool




source ./tool_setup.csh这一句改用csh ./tool_setup.csh
可能source的时候用bash的规则来解析后 ...
L_kernel 发表于 2010-09-14 12:45

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2010-09-14 19:32 |只看该作者
csh ./tool_setup.csh 不会再报错了

但是运行了之后, bash中的 which tool, 却找不到tool_setup.csh中 ...
dreamone503 发表于 2010-09-14 13:17



    这里有两个环境变量。csh中的$path和bash中的$PATH,现在bash脚本中export PATH=$PATHpath,然后再which行不行?

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
7 [报告]
发表于 2010-09-15 08:16 |只看该作者
先确定你想用的变量在csh脚本中一定是环境变量
run.bash中写bash命令部分
然后再写个runrun.bash:

  1. #!/bin/bash
  2. csh <(cat  ./tool_setup.csh;echo exec ./run.bash)
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP