0
我有一個從文件「INPUT_FILE」與許多行線讀取一個shell腳本,弗里斯特幾行情況如下:shell腳本:在讀線錯誤
04fcgFs-mjA
0DZ7DbdeOeE
0yvHWyvexZA
1IAhDGYlpqY
1Vajuce8nyU
1Y_wJR1I-9s
2dn-ULkQl5M
2GmVajkqLNU
2X85PdfQqnM
37LAPz7pnQI
在腳本中,我有:
while read line
do
blabla .....
done< input_file
非常有趣的是,當腳本讀取偶數行時,如第二,第四,第六,第一個字符將會丟失。例如,當它讀取第二行時,獲得的字符串是DZ7DbdeOeE
,而不是0DZ7DbdeOeE
。
我試着寫一個簡單的腳本只有:
while read line
do
echo $line
done< input_file
然後,它可以正確讀取0DZ7DbdeOeE
。
由於我的shell腳本很長,我不會在這裏發佈它,但我認爲內部代碼與「input_file」無關。順便說一句,有喜歡
if [condition]
continue
fi
,所以我只是想知道什麼是該pheonomenum潛在原因的一些塊?真奇怪!
我已經張貼此鏈接中的腳本內容: http://goo.gl/Iwory
我有我的疑惑。我懷疑問題是你如何使用'$ line'。 –
你在'blabla .....'裏做什麼? – Yamaneko
在你的大腳本的循環頂部放置'echo「$ line」',看看它是否正確。另外,如果你的shell支持這個選項,也許你可以使用'read -r'(for raw)。祝你好運。 – shellter