首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

line 一: ?echo: command not found

2013-09-28 
line 1: ?echo: command not found在Linux中新建test.sh,然后在里面如下如下:echo qqqqecho wwww执行

line 1: ?echo: command not found
在Linux中新建test.sh,然后在里面如下如下:
echo 'qqqq'
echo 'wwww'

执行脚本后 sh test.sh  结果如下两行,
test.sh: line 1: ?echo: command not found
wwww

发现echo第一行都执行报错 不知道大拿们有没有遇到此问题,谢谢大家;  大牛能讲下其中原理么 跟直接vi输入的有什么区别 
[解决办法]

 大牛能讲下其中原理么 跟直接vi输入的有什么区别 


如果你是在vi里面一个字母一个字母输入的,应该也没问题。
可能你是用复制粘贴的,就可能引入“换行”符导致的问题

我在网上搜索了一下,你可以看看这个网页http://blog.163.com/chenglian_999@126/blog/static/760002792010730104951277/

[解决办法]
不是重定向吗
[解决办法]
引用:
不是重定向吗


嗯,用重定向的方法来验证是否是由CRLF导致的问题。
楼主的环境里面没有dos2unix的命令,相对于安装一个dos2unix然后再去验证的方案,这种用重定向去验证的方案更容易进行。
[解决办法]
引用:
Quote: 引用:

不是重定向吗


嗯,用重定向的方法来验证是否是由CRLF导致的问题。
楼主的环境里面没有dos2unix的命令,相对于安装一个dos2unix然后再去验证的方案,这种用重定向去验证的方案更容易进行。

用cat -A可以看吗
[解决办法]
引用:
Quote: 引用:

Quote: 引用:

不是重定向吗


嗯,用重定向的方法来验证是否是由CRLF导致的问题。
楼主的环境里面没有dos2unix的命令,相对于安装一个dos2unix然后再去验证的方案,这种用重定向去验证的方案更容易进行。

用cat -A可以看吗

可以


$] todos test_new.sh
$] cat -A test_new.sh
echo 'qqqq'^M$
echo 'wwww'^M$
$] fromdos test_new.sh
$] cat -A test_new.sh
echo 'qqqq'$
echo 'wwww'$


[解决办法]
vi打开,:set fileformat=unix,和dos2unix一个意思

热点排行