!/bin/bash
echo Enter the num
read n
for i in { 1..10 }
do
m=$((n*i))
echo "$i * $n" = $m
done
я получил ошибку вБаш оболочка программы
для: 8: Illegal номер: { любезно предложить решение
!/bin/bash
echo Enter the num
read n
for i in { 1..10 }
do
m=$((n*i))
echo "$i * $n" = $m
done
я получил ошибку вБаш оболочка программы
для: 8: Illegal номер: { любезно предложить решение
сделать это как этот
#!/bin/bash
read -p "Enter the num: " n
for i in {1..10}
do
m=$((n*i))
echo "$i * $n" = $m
done
притон неправильно, и не оставляйте пространство в расширении скобы, например {0..10}
, а не { 0..10 }
Не могли бы вы также рассказать мне, как это сделать в ksh. {0..10} недействительно ksh – Vijay
@benjamin. Вы всегда можете использовать стандартную команду seq, например: «for i in $ (seq 1 10); do echo $ i; done " – Johan
@benjamin, моя версия ksh поддерживает расширение скобки. вы можете попробовать 'ksh -o braceexpand' или' set -o braceexpand' в вашем скрипте. – ghostdog74
Это работает в Баш:
for ((i=1; i<=10; i++)); do
# ...
done
отформатируйте код как код. – Drakosha