2

Я хотел увеличить переменную k внутри цикла. Каждое увеличение на 0,025. Я пытался с помощью:

let "k += 0.025"

а также

let "$k += 0.025"

а также

k += 0.025

и много других вариаций. Кто-нибудь знает, как этого добиться?

Спасибо! Amit

1 ответ1

3

Bash не поддерживает с плавающей запятой. Кш93 и зш до.

В Bash вы можете использовать bc или awk:

k=$(echo "$k + 0.025" | bc -l)

или же

k=$(awk -v "k=$k" 'BEGIN { print k + 0.025 }')

В некоторых случаях может быть удобнее писать целые сценарии или разделы в AWK, а не пытаться передавать и выводить значения и делать неудобные сравнения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .