我有一個看起來像這樣的文件,但很多大:讀線有很多的空間和它們保持在輸出
xxxxxxx xxxxx xxxx
yyyyyyy yyyyy yyyy
zzzzzzz zzzzz zzzz
bbbbbbb bbbb
,但很多大,我想比較的第二個和第三列,只有第4位做我寫了這樣的事情:
while IFS='' read -r line; do
a=${line:181:4}
b=${line:276:4}
str1="$a"
str2="$b"
# echo $a
# echo $b
# echo $str1
# echo $str2
if [[ "$str1" == "$str2" ]]
then
echo $line >> $1.diffs.txt
fi
done <$1
的STR *的原因是因爲數字偶爾與0,因此將它們解釋爲八進制開始,給我一個錯誤,我的問題是$ 1.diffs.txt中的輸出僅包含1個空白區域,而不是全部空白區域。 IE
輸出:
xxxxxxx xxxxx xxxx
yyyyyyy yyyyy yyyy
zzzzzzz zzzzz zzzz
在你的'if'語句,你需要引用'$行'即''回聲「$行」>> ...'保留空白 – arco444