0
我是bash的初學者 我無法弄清楚這段代碼有什麼問題。意外標記'fi'附近的語法錯誤
#!/bin/bash
j=0
k=1
for i in $1
do
echo "tile-"+$j +"-" +"$k"
(($j=$j+1))
if [ "$j" == "6" ] then
$j=0
(($k=$k+1))
fi
done
我是bash的初學者 我無法弄清楚這段代碼有什麼問題。意外標記'fi'附近的語法錯誤
#!/bin/bash
j=0
k=1
for i in $1
do
echo "tile-"+$j +"-" +"$k"
(($j=$j+1))
if [ "$j" == "6" ] then
$j=0
(($k=$k+1))
fi
done
正如for
和do
,if
和then
是兩個不同(但相關)結構,應該由一個命令終止符隔開,無論是;
或換行符:
if [ "$j" == "6" ]; then
[...]
fi
if [ "$j" == "6" ]
then
[...]
fi
你錯過'then'前的';'或換行符。 –
...我猜'$ j = 0'應該是'j = 0'。另外,你可以去掉'(())'中的''''。 –
是的,現在它的工作非常感謝:)回覆:) –