Сценарии оболочки всегда были разными, когда дело доходит до синтаксиса.
, поэтому, когда вы говорите -lt
, это означает меньше (<). Поэтому, когда вы пишете свой код, он работает совершенно нормально </p>
while [ $num -lt 10 ]; do
echo "$num"
((num++))
done
Но когда вы используете <
, это в сценарии оболочки используется для чтения ввода из файла или каталога.Так что здесь, в вашем случае, он будет искать имя файла, который находится внутри переменной $num
Простыми словами
-lt
меньше того, что используется для проверки состояния
<
используется для чтения ввода из файлов.