免费注册 查看新帖 |

Chinaunix

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

高手帮忙看一下! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-22 01:08 |只看该作者 |倒序浏览
写了一个简单的测试$@和$*的脚本,保存并且设置为可执行
#! /bin/sh

#the name is "tt"
echo "$@"
echo "$*"
a2=("$@")
b2=("$*")
echo 'the number of parameters in "$@" is '${#a2[*]}
echo 'the number of parameters in "$*" is '${#b2[*]}

exit 0
当我在终端运行sh tt p1 "p2 p3"能正确输出结果,可是为什么./tt p1 "p2 p3"就提示错误呢?tt在终端所在的当前目录。错误是:
bash: ./tt: /bin/sh^M: bad interpreter: No such file or directory
而且敲绝对路径的时候还是提示错误。

论坛徽章:
0
2 [报告]
发表于 2006-10-22 10:26 |只看该作者
大概是登陆用户的shell不一样。
你可以切换一下试一试:
# sh
#./tt

论坛徽章:
0
3 [报告]
发表于 2006-10-22 18:41 |只看该作者
谢谢楼上的,找到原因了,原来里面有不可见字符(^M);用vi就可以看出来了

论坛徽章:
0
4 [报告]
发表于 2006-10-23 09:50 |只看该作者
怎么去掉^M呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP