ellawu@ellawu-desktop:~$ vim read.sh
#!/bin/bash
read -p"请输入一个文件名:“fn
exec 3<$fn#
exec 0<&3-#
nm=1
while read ct; do
echo"文件$fn的第$nm行是:$ct";
nm=`expr $nm+1`
done
exec 3<$-#
ellawu@ellawu-desktop:~$ chmod +x read.sh
ellawu@ellawu-desktop:~$
ellawu@ellawu-desktop:~$ ./read.sh
./read.sh: line 8: 查找“"”的匹配字符时发现意外的EOF
./read.sh: line 12: 语法错误:不可预料的文件末尾
错哪了?
帮忙看一下哪里错了吧。
-
- 帖子: 247
- 注册时间: 2008-09-23 21:13
帮忙看一下哪里错了吧。
念几句佛经就以为自己在悟道,引用几句圣经就以为自己是上帝的使者。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
- goodluck1982
- 帖子: 171
- 注册时间: 2007-07-05 2:48
Re: 帮忙看一下哪里错了吧。
把全角双引号“ 换乘半角的 "
这是什么意思啊?
exec 3<$fn#
exec 0<&3-#
你的脚本想要干什么呢?
这是什么意思啊?
exec 3<$fn#
exec 0<&3-#
你的脚本想要干什么呢?
-
- 帖子: 247
- 注册时间: 2008-09-23 21:13
Re: 帮忙看一下哪里错了吧。
抄书的,书上说是打开一个文件并显示文件没行内容
exec 3<$fn# (书上旁边注解打开文件 句柄为3)
exec 0<&3-# (书上说把句柄3作为标准输入
exec 3<$fn# (书上旁边注解打开文件 句柄为3)
exec 0<&3-# (书上说把句柄3作为标准输入
念几句佛经就以为自己在悟道,引用几句圣经就以为自己是上帝的使者。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
-
- 帖子: 247
- 注册时间: 2008-09-23 21:13
Re: 帮忙看一下哪里错了吧。
该了“”后的结果
ellawu@ellawu-desktop:~$ ./read.sh
请输入一个文件名:fndzh
./read.sh: line 4: #: 没有该文件或目录
./read.sh: line 5: 3-#:意义不明确的重定向
./read.sh: line 8: echo文件的第1行是::找不到命令
./read.sh: line 8: echo文件的第1+1行是::找不到命令
我想看该目录下的dzh.sh可是出现如上结果,错哪了呢?
第一句的fn为什么会跟着文字一起跳出来呢?
ellawu@ellawu-desktop:~$ ./read.sh
请输入一个文件名:fndzh
./read.sh: line 4: #: 没有该文件或目录
./read.sh: line 5: 3-#:意义不明确的重定向
./read.sh: line 8: echo文件的第1行是::找不到命令
./read.sh: line 8: echo文件的第1+1行是::找不到命令
我想看该目录下的dzh.sh可是出现如上结果,错哪了呢?
第一句的fn为什么会跟着文字一起跳出来呢?
念几句佛经就以为自己在悟道,引用几句圣经就以为自己是上帝的使者。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
- goodluck1982
- 帖子: 171
- 注册时间: 2007-07-05 2:48
Re: 帮忙看一下哪里错了吧。
fn前要有个空格!
是讲bash的书吗?
恕我没见过 exec的这种用法: exec 3<$fn#
exec后应该加上一个命令啊?
我觉得应该是 exec <command> 3< $fn
才对呀
搞不懂
是讲bash的书吗?
恕我没见过 exec的这种用法: exec 3<$fn#
exec后应该加上一个命令啊?
我觉得应该是 exec <command> 3< $fn
才对呀
搞不懂
-
- 帖子: 247
- 注册时间: 2008-09-23 21:13
Re: 帮忙看一下哪里错了吧。
找到原因了,把#全部去掉就可以执行了,书上的文字写的太近了,#是表示注释用的
#!/bin/bash
read -p"请输入一个文件名:" fn
exec 3<$fn
exec 0<&3-
nm=1
while read ct; do
echo"文件$fn的第$nm行是:$ct";
nm=`expr $nm+1`
done
exec 3<$-
执行结果如下:
./read.sh: line 8: echo文件dzh.sh的第1行是:#!/bin/bash: 没有该文件或目录
./read.sh: line 8: echo文件dzh.sh的第1+1行是:cd /home/ellawu/.wine/drive_c/dzh/internet: 没有该文件或目录
./read.sh: line 8: echo文件dzh.sh的第1+1+1行是:wine hypwise.exe:找不到命令
./read.sh: line 8: echo文件dzh.sh的第1+1+1+1行是::找不到命令
./read.sh: line 11: hB: 没有该文件或目录
可是为什么会出现红色字体的部分呢?我是说为什么会出现这些内容呢?
#!/bin/bash
read -p"请输入一个文件名:" fn
exec 3<$fn
exec 0<&3-
nm=1
while read ct; do
echo"文件$fn的第$nm行是:$ct";
nm=`expr $nm+1`
done
exec 3<$-
执行结果如下:
./read.sh: line 8: echo文件dzh.sh的第1行是:#!/bin/bash: 没有该文件或目录
./read.sh: line 8: echo文件dzh.sh的第1+1行是:cd /home/ellawu/.wine/drive_c/dzh/internet: 没有该文件或目录
./read.sh: line 8: echo文件dzh.sh的第1+1+1行是:wine hypwise.exe:找不到命令
./read.sh: line 8: echo文件dzh.sh的第1+1+1+1行是::找不到命令
./read.sh: line 11: hB: 没有该文件或目录
可是为什么会出现红色字体的部分呢?我是说为什么会出现这些内容呢?
念几句佛经就以为自己在悟道,引用几句圣经就以为自己是上帝的使者。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
躲在阴暗的角落就以为看不见你那肮脏的灵魂?
游走在灰色领域就以为安然无恙?
举头三尺有神明,不是不报是时候未到。
- goodluck1982
- 帖子: 171
- 注册时间: 2007-07-05 2:48
Re: 帮忙看一下哪里错了吧。
echo 后有空格 echo ".........."
+两边要有空格
$nm + 1
就好了
不过还是没太明白这里exec的用法
+两边要有空格
$nm + 1
就好了
不过还是没太明白这里exec的用法