$ INPUT模糊重定向

时间:2012-10-31 20:32:17

标签: bash shell cygwin

我刚才写了这个脚本并且工作正常,但由于某种原因,我现在收到了cygwin第11行的“模糊重定向”错误消息。

#!/bin/bash
cd 'my/file/path'
INPUT= ./Students.csv
OLDIFS=$IFS
IFS=,
[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }
while read flname
do
    cp Rubric.pdf ./Grades/$flname_rubric.PDF

done < $INPUT
IFS=$OLDIFS

我在这里做错了什么?

2 个答案:

答案 0 :(得分:2)

尝试在等号INPUT=后删除空格。

答案 1 :(得分:1)

如前所述,删除空间。所以行读取INPUT=./Students.csv

将$ INPUT换入“”,使其显示为done < "$INPUT"

我添加了echo "cp Rubric.pdf ./Grades/$flname_rubric.PDF",因此您可以看到while循环正常工作。

#!/bin/bash
INPUT=./Students.csv
OLDIFS=$IFS
IFS=,
[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }
echo "While "
while read flname
do
    echo "cp Rubric.pdf ./Grades/$flname_rubric.PDF"
    cp Rubric.pdf ./Grades/$flname_rubric.PDF
done < "$INPUT"
IFS=$OLDIFS