LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 851|回复: 7

echo的问题

[复制链接]
发表于 2005-4-13 01:51:07 | 显示全部楼层 |阅读模式
bash#cat echo.sh

#!/bin/bash
echo -n "What is your name:"
read name1
echo -n "What is your name2:\c"
read name2
echo -n "What is your name3:\c"
read name3

但是当我执行脚本后,却得不到相应变量的值,全部是空。
发表于 2005-4-13 08:35:15 | 显示全部楼层
你的意思是不是这样:
  1. zhyfly@zhyfly:~/bash$ cat echo.sh
  2. #!/bin/bash
  3. echo -n "What is your name:"
  4. read name1
  5. echo -n "What is your name2:\c"
  6. read name2
  7. echo -n "What is your name3:\c"
  8. read name3
  9. zhyfly@zhyfly:~/bash$ sudo chmod +x echo.sh
  10. zhyfly@zhyfly:~/bash$ ./echo.sh
  11. What is your name:zhy
  12. What is your name2:\cfly
  13. What is your name3:\chaha
  14. zhyfly@zhyfly:~/bash$ echo $name $name2 $name3

  15. zhyfly@zhyfly:~/bash$
复制代码


但是你看下面:
  1. zhyfly@zhyfly:~/bash$ cat echo.sh
  2. #!/bin/bash
  3. echo -n "What is your name:"
  4. read name1
  5. echo -n "What is your name2:\c"
  6. read name2
  7. echo -n "What is your name3:\c"
  8. read name3
  9. echo "$name1 $name2 $name3"
  10. zhyfly@zhyfly:~/bash$ sudo chmod +x echo.sh
  11. zhyfly@zhyfly:~/bash$ ./echo.sh
  12. What is your name:zhy
  13. What is your name2:\cfly
  14. What is your name3:\chaha
  15. zhy fly haha
  16. zhyfly@zhyfly:~/bash$
复制代码

也就是说在脚本里就可以显示,这是为什么呢?自己思考一下

提示一下:想想关于进程中父进程与子进程,同样shell里也有parent shell和sub shell哦

还有个问题,就是我想问一下你的\c在这里是什么作用?偶不是很明白
回复 支持 反对

使用道具 举报

发表于 2005-4-13 09:07:58 | 显示全部楼层
\c表示去掉换行

像这样:

  1. $echo -e "hi\c"
  2. hi$
复制代码


在linux下,有-n选项产生相同的效果,但某些UNIX的echo可能会没有-n选项
回复 支持 反对

使用道具 举报

发表于 2005-4-13 09:09:43 | 显示全部楼层
呵呵,我说呢,我想都加-n了,怎么还要\c!在这里也没什么作用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-21 11:33:32 | 显示全部楼层
Post by zhy2111314
呵呵,我说呢,我想都加-n了,怎么还要\c!在这里也没什么作用

-n在linux在这里起到转意符的作用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-21 11:35:17 | 显示全部楼层
我可以使用 . ./echo.sh执行?就可以得到我想得到结果吧。
回复 支持 反对

使用道具 举报

发表于 2005-4-21 18:58:18 | 显示全部楼层
恩,这就是fork,source,exec之间的区别了,有兴趣的话自己查查:)
回复 支持 反对

使用道具 举报

发表于 2005-4-23 10:44:54 | 显示全部楼层
楼主可以试一试source echo.sh 在查看变量.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表