syntax error near unexpected token `问题的解决
先说点常识问题:
因为MS-DOS及Windows是回车+换行来表示换行,因此在Linux下用Vim查看在Windows下用VC写的代码,行尾后的“^M”符号,表示的是符。
现在,你使用vim -b 打开你的文件。就会发现每一行都有^M ,那么我们可以是用全局替换替换掉
................解决方法
在命令编辑行<就是: 按ESC键 然�.shift+:åå·>è¾å ¥ï¼%s/^M//g
注æï¼ä¸è¿°å½ä»¤è¡ä¸çâ^Mâ符ï¼ä¸æ¯â^âåå ä¸âMâï¼èæ¯ç±âCtrl+vâãâCtrl+Mâé®çæçã
Linux Shell syntax error: unexpected end of file
è¿ç§é误é½æ¯æ²¡æç»ææ è®°é å¾ç
å¦ifä¹å没æfi
for å¾ªç¯ doä¹å没ædone
while å¾ªç¯ doè¿å没ædone
å¨windowsä¸ç¨èææºè£ 好redhat linuxï¼å®æç½ç»é ç½®ï¼è½ä¸æçwindows交äºäºãå ¶å®ä¹ä¸éè¦é ã
å¼å§å¦ä¹ bashï¼æ¯æ¬¡æµè¯ä»£ç é½å¨windowsä¸å好ï¼ç¶åä¼ å°linuxä¸æ§è¡ã
å¨å¦ä¹ å°ifçæµç¨æ§å¶çè¯æ³çæ¶åï¼æéè§äºç¬¬ä¸ä¸ªé¾é¢åçifçæµè¯æ»æ¯ä¸æ£ç¡®ï¼âif.sh: line 11: syntax error: unexpected end of fileâã
赋值语句不对,应该是let i=$i+1
let s=$s+$i
或者也可以是i=`expr $i+1`
$(($i+1)) 本身不是命令不能产生输出结果不能用于直接赋值,需使用echo $(($i+1)) 输出结果,
如 i=`echo $(($i+1))`也可以。
expr是用于计算一个表达式的值的命令。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)