Я использую Cygwin в Windows, и мне нужно выполнить условное сравнение и распечатать результат. Звучит просто, но работает не так, как ожидалось. Мой сценарий:
ls //NSVA/Matrical/Vitesse/REPORTS | grep .csv | grep $1 | grep -v Pull | wc -l > a
ls //10.9.214.200/Lims/LimsLZ/starlims1/done/Nitrostore_stored/$1 | grep -v Pull |wc -l > b
echo 'Count of Uploaded files in NS is'
cat a
echo 'Count of Uploaded files in LZ is'
cat b
if [ a == b ]; then
echo "Count MATCH!";
else
echo "Count does NOT MATCH!!!";
fi;
rm "a" "b"
Выход:
C:\Users\User>ReportsUploadCheck.bat 2017-10
Count of Uploaded files in NS is
7
Count of Uploaded files in LZ is
7
Count does NOT MATCH!!!
Мое замешательство: 7 == 7, почему он напечатал «не совпадает»? Как это исправить и убедиться, что если числа равны, выведите «MATCH», а когда они различаются, выведите «NOT MATCH»? Спасибо