Я хочу накопить размер строки для ряда файлов, содержащихся в папке. Я написал следующий скрипт:
let a=0
let num=0
for i in folder/*
do
num=`cat $i | wc -l`
a=$a+$num
done
echo $a
В конце скрипта я получаю 123 + 234 + 432 + ... а не результат арифметической операции сложения.
shell
shell-script
arithmetic
любопытный
источник
источник
$
внутренней части((...))
.a=$((a+num))
уже хорошо.Вы также можете использовать этот код
И УБЕДИТЕСЬ, ЧТО ЕСТЬ ПРОБЕЛ НА ОБОИХ СТОРОНАХ + IN "$ a + $ num"
источник
Вы можете сначала объявить тип переменной:
источник
Извините, предыдущая редакция была для другого поста. Вот лишь небольшая модификация оригинального скрипта:
источник
В ответе необходимо указать, в какой оболочке действует код. Например, в bourne Shell (
sh
) допустимы только следующие инструкции:в то время как другие возможности , перечисленные @manatwork могут быть действительными в Bourne снова оболочки (
bash
)источник
я делаю это так
источник