免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: bigfatsea
打印 上一主题 下一主题

while内外居然大有不同?! [复制链接]

论坛徽章:
0
11 [报告]
发表于 2005-10-19 21:03 |只看该作者

while内外居然大有不同?!

可是,为什么export这里不起作用呢?不是说export了之后就成环境变量了嘛?环境变量还不够臭屁的啊?!难道这个环境变量对子线程不起作用?

牛人请继续(牛人是修出来的,牛X是show出来的^_^)

论坛徽章:
0
12 [报告]
发表于 2005-10-19 21:06 |只看该作者

while内外居然大有不同?!

另外,大哥,你太强了,偶去你的blog溜了一眼,居然满屏好吃的。。。。。好一个文治武功内外兼修。。。。佩服佩服啊。。。。

(有点跑题,斑竹莫怪)

论坛徽章:
0
13 [报告]
发表于 2005-10-19 21:08 |只看该作者

while内外居然大有不同?!

大姐,能加个msn不,我的bigfatsea◎haotmail,您不知道我又多么的需要您啊。。。。。。

论坛徽章:
0
14 [报告]
发表于 2005-10-19 23:35 |只看该作者

while内外居然大有不同?!

A pipe line will cause shell to launch a sub shell process, and pipe the result of the sub shell to the while loop. The life of the sub shell ends when the while loop's finished, everything in the loop will not be visible outside (to its parent shell process), and everything vanishes when the sub shell process dies. So use advanced IO redirection or instead use a for loop to avoid such problems.

论坛徽章:
0
15 [报告]
发表于 2005-10-20 09:16 |只看该作者

while内外居然大有不同?!

很简单吗不要把shell当c来理解就是了!  shell的while循环是一个子进程,结束后里边的变量也就消失了! 就是这样简单!   大哥我也入门了你没有算我一个

论坛徽章:
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
16 [报告]
发表于 2005-10-20 09:35 |只看该作者

while内外居然大有不同?!

原帖由 "bigfatsea" 发表:
可是,为什么export这里不起作用呢?不是说export了之后就成环境变量了嘛?环境变量还不够臭屁的啊?!难道这个环境变量对子线程不起作用?

牛人请继续(牛人是修出来的,牛X是show出来的^_^)

你现在的想法是传给父进程而不是子进程

论坛徽章:
0
17 [报告]
发表于 2005-10-20 14:30 |只看该作者

while内外居然大有不同?!

大天使说得对,我是想从子进程向外传。。。问题也已经解决了,可是疑问却还是有的

十三问的时候说export会把变量变成环境变量,我就觉得把,这个环境变量应该在子线程有效对吧(也确实如此),纳闷儿的就是。。。我对环境变量的操作怎么就无法作用到这个变量身上呢?莫非。。。子线程创建时,只是把它copy进来,引用当然没问题,更新嘛,自然更新的是副本,退出时,副本disappear了,值也就跟着vanish啦,外面的那个环境变量依然如故。。。一切又重归平静。。。。。。。。。

偶的理解对不?

论坛徽章:
0
18 [报告]
发表于 2005-10-20 14:40 |只看该作者

while内外居然大有不同?!

大约偶是猜对啦(厚厚~~强词夺理都完全不顾人家是否承认~~),所以接着问问题^_^

我用 ls -F | grep '\.table[^\.]*$' 来列出所有以.table结尾的文件(注意:不包括目录哦),可是列出的结果有些会带有"*",例如"a.table*",偶不管那个星星代表了啥意思(其实是不知道>_<),就是要去掉它(读文件的时候不需要它),试了老~~~~半天,都没有找到解决方法。。。。。真是气死了


另外,一直想问,grep '(abc).+(def)' 匹配出来的那两个括号里的东西怎么获取啊?$1和$2似乎是串通一气,都不愿意鸟我这种无端的需求。。。打死也不给任何反馈。。。。气的我无可奈何。。。。

被折腾成这样。。。。。开始怀念C啦。。。想当初那可是被偶奉若“天文”(意为天上来的文字@_@),如今看来。。。。原来真的是“天外有天”啊。。。。

(斑竹勿急,闲聊的部分偶不收稿费^_^)

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
19 [报告]
发表于 2005-10-20 15:32 |只看该作者

while内外居然大有不同?!

線程(thread)
行成/進程(process)

是不同的概念, 別誤用.

论坛徽章:
0
20 [报告]
发表于 2005-10-20 15:43 |只看该作者

while内外居然大有不同?!

哇,名扬四海的网中人大哥献身说法。。。。真是荣幸之至~~~~

ok,thread和process偶是知道一点的,那就是process的概念比thread小。。。。。(唉~也就知道这一点-_-||)。。。。。只是不明白到了shell这里具体是怎样的。。。。。(怯怯的问)应该是sub process吧。。。。


另外还是想请网中人大师指点迷津,confirm一下偶前面的想法,顺便的(不用特别的专门的故意的。。。就顺便的^_^)帮忙把偶第二个问题解决了吧。。。。谢谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP