由OpenCV的文件结尾分隔

时间:2017-10-10 21:29:45

标签: c++ bash opencv eof

当我运行此脚本时,我收到此警告。

./my.sh: line 8: warning: here-document at line 8 delimited by end-of-file (wanted `nameofpicture.txt')

剧本:

#!/bin/bash
g++ -o crop crop.cpp `pkg-config --cflags --libs opencv`

g++ -o recog recog.cpp `pkg-config --cflags --libs opencv`

./crop

while read line

do

echo "$line" |./recog

done <<"nameofpicture.txt"

1 个答案:

答案 0 :(得分:2)

问题是<<something表示 here-document 的开头。 但很可能这不是你想要做的, 但是使用单个<进行文件的输入重定向。

你可能想写下这样的样子:

while read line    
do   
    echo "$line" | ./recog
done < nameofpicture.txt

此循环将文件nameofpicture.txt中的每一行传递给./recog

很可能你实际上并不需要循环, 可以将文件中的输入直接重定向到程序, 没有循环:

./recog < nameofpicture.txt