我的脚本出现问题。我试图读取一个变量(就像我在C中一样)然后在计数器中使用它来进行循环。这是我的代码:
#!/bin/bash
echo " How many times?"
read $Read
while [ $Read >1 ];
do
echo "This is my first script"
Read=$(($Read-1))
done
根据我的逻辑,这个程序应该在 Read 中打印次数,因为我正在减少变量计数器。这不会发生。你能告诉我如何解决它吗?
答案 0 :(得分:0)
#!/usr/bin/env bash
read -p 'How many times? ' times
while [[ $times -ge 1 ]]; do
echo "This is my first script."
let times-=1
done
答案 1 :(得分:0)
read
获取变量的名称,不带美元符号。
read Read
使用美元符号在技术上不是错误;它可能不是你的意思。该参数将被扩展,其值将用作read
设置的变量的名称。例如:
$ foo=bar
$ read $foo <<< 5
$ echo $bar
5