0

このスクリプトを実行するたびに、0 が出力され、エラーで中止されます

./hw4_1: line 6: syntax error near unexpected token `let'
./hw4_1: line 6: `  let COUNTER=0'

ソース:

#!/bin/bash
COUNTER=0
echo $COUNTER
for i in {$@:2}do
  let COUNTER=0
  while [COUNTER -ne $1]; do
      echo "$i"
      let COUNTER+=1
    done;
done
exit

let を取り除き、COUNTER の前にドル記号を追加しようとしましたが、それらの組み合わせが機能しません... この bash 構文は私を殺しています。「let COUNTER=0」を COUNTER=0 に変更すると、エラーが返されるだけです

./hw4_1: line 6: syntax error near unexpected token `let'  
./hw4_1: line 6: `  let COUNTER=0'
4

2 に答える 2

0

を使用する必要はありませんlet。使用するだけです:

COUNTER=0

他の場所で $COUNTER が必要になります。たとえば、次のようになります。

while [ $COUNTER -ne $1 ]

インクリメントを行うには:

COUNTER=$(($COUNTER + 1))
于 2013-10-05T20:30:07.753 に答える