Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用整数的Bash循环出现问题_Bash_Loops_While Loop - Fatal编程技术网

使用整数的Bash循环出现问题

使用整数的Bash循环出现问题,bash,loops,while-loop,Bash,Loops,While Loop,因此,我查阅了while循环的示例,并将脚本按原样放在一起,但仍然存在问题。如果我猜的话,我会用bc函数的算术部分来表示 我希望循环一直运行到达到1000次,然后计算它运行了多少次。我还没有完成脚本的计数部分,因为我仍在尝试让它运行(是的,我知道awk会更容易) 这就是我到目前为止所做的: #!/bin/bash total=120 #this will be a variable that is read in from a menu but 120 is ok for now while [

因此,我查阅了while循环的示例,并将脚本按原样放在一起,但仍然存在问题。如果我猜的话,我会用bc函数的算术部分来表示

我希望循环一直运行到达到1000次,然后计算它运行了多少次。我还没有完成脚本的计数部分,因为我仍在尝试让它运行(是的,我知道awk会更容易)

这就是我到目前为止所做的:

#!/bin/bash
total=120 #this will be a variable that is read in from a menu but 120 is ok for now
while [ $total -lt 1000000 ]
do
echo $total
total=$(bc<<<"scale=2;$total +  $total * .1") #I don't know if I have to use "let" before total but it did not make a difference.
done.
#/bin/bash
total=120#这将是一个从菜单中读取的变量,但120目前还可以
而[$total-lt 1000000]
做
echo$总计

总计=$(bc也使用
bc
进行比较

#!/usr/bin/env bash

total=120
while [ "$(bc <<< "$total < 1000000")" == 1 ]
do
    echo $total
    total=$(bc <<< "scale=2;$total +  $total * .1")
done
!/usr/bin/env bash
总数=120

虽然[“$(bc只要处理整数,就可以使用算术表达式
(…)
编写循环,而不需要像
bc
这样的外部命令:

#!/bin/bash
total=120
while ((total < 1000000)); do
  echo $total
  ((total = total + total / 10))
done
!/bin/bash
总数=120
而((总数<1000000));则
echo$总计
((总计=总计+总计/10))
完成

有两行以“total”开头,但我希望您在第3行得到一个错误,该错误以
While
开头,我希望错误是
While:command not found
(关键字“While”未大写)。一旦修复,我希望错误大约为“1000000”“不是一个整数。如果我在提示下运行它,它工作得很好,但是在一个循环中…不是太多的总数=120总数=$(非常感谢!我期待着在几年后成为帮助的人。