linux shell while读取文件报错-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

linux shell while读取文件报错

简介:

while...do 从文件中读取,报错。

脚本名:while_readFile.sh

脚本内容:

 

Shell代码  收藏代码
  1. #!/bin/sh  
  2. while read LINE abc  
  3. do  
  4.     echo $LINE  
  5. <strong><span style="color: #0000ff;">done< <(cat ./a.txt)  
  6. </span></strong>  

 注意:两个< 之间有一个空格。

 

执行结果如下:

 

[root@localhost while]# ./while_readFile.sh

./while_readFile.sh: line 5: syntax error near unexpected token `('

./while_readFile.sh: line 5: `done< (cat ./a.txt)'

 

 

如果使用bash执行的话,就没问题:

 

[root@localhost while]# bash while_readFile.sh

11:22

aa:bbb

:cc

:dd

 

 

原来是因为 sh 不执行标蓝的用法。

脚本修改如下,以支持sh:

Shell代码  收藏代码
  1. #!/bin/sh  
  2. while read LINE abc  
  3. do  
  4.     echo $LINE  
  5. done< ./a.txt  

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: