为什么第二个Echo在while循环中首先显示?

时间:2014-10-20 09:37:10

标签: shell

我正在测试一个小脚本,看看我是否可以杀死autosys中的多个作业。但是shell脚本不起作用,不知何故在echo开始之前回显变量显示。第二个echo是否在子程序中运行?

#!/bin/bash
  while IFS=read line; do
   echo "Start"
   echo "$line"
  done < "run.dat"

我想要输出 开始 run.dat中的一些行 开始 run.dat中的某些行

但我得到的是 run.dat中的一些行 开始

请建议。

1 个答案:

答案 0 :(得分:0)

删除IFS=read不是正确答案。

IFS=read之间添加空格是。

该行显示while IFS=read line(即当line变量的值为IFS时,read命令返回true line命令的环境)。

有关详细信息,请参阅http://mywiki.wooledge.org/BashFAQ/001