Я использую скрипт bash в Ubuntu 18.04. Скрипт должен запускать скрипт на Python 10 раз. Я сделал следующий скрипт testbash.sh :

#!/bin/sh
count=1
while [ $count -le 9 ]
do
python /home/e/Documents/codemycode/test.py
((count++))
echo $count
done

Это генерирует ошибку:

./testbash.sh: 5: ./testbash.sh: count++: not found

Я также попытался заменить ((count++) на:

count = $(expr $count+1)

Но также не удалось.

1 ответ1

1

Ваш текущий shebang определяет sh как переводчик. ((count++)) не работает в sh , он работает в bash . Измените Шебанг на

#!/bin/bash

Следующий синтаксис поддерживается sh:

count=$(($count+1))

или даже

count=$((count+1))

Насколько я знаю, это портативный (POSIX) способ.

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