2017-10-10 96 views
-1

當我運行這個腳本時,我得到了這個警告。用OpenCV結尾文件分隔

./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" 

回答

2

的問題是,<<something表示這裏文檔的開始。 但很可能這不是你想要在這裏做的, ,但使用單一的<從文件輸入重定向。

你大概意思寫的這個樣子的,而不是:

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

這個循環傳遞從文件nameofpicture.txt每一行./recog

最可能的是,你實際上並不需要一個循環, 可以從文件中輸入重定向直接到程序, 沒有環:

./recog < nameofpicture.txt