2014-09-22 84 views
1

以下代碼在hp-ux中不起作用。但是,它適用於Redhat機器。請讓我知道這裏有什麼不對?在hp unix中使用「for」命令

#/bin/ksh 
Rowcount=`wc -l $acList | awk -F " " '{print $1}'` 

for ((i=1; i<=Rowcount; i++)); do 
. 
. 
. 

錯誤我得到的是:

syntax error at line 4 : `(' unexpected 
+0

@fedorqui還是一樣的錯誤'('意想不到的 – 2014-09-22 09:08:50

+0

我看到它很好,要麼'我<= Rowcount'或'我<= $ Rowcount'。我看到的是你可以直接做'Rowcount = $(wc -l <​​$ acList)'。使用' fedorqui 2014-09-22 09:25:59

回答

0

您可以使用while循環:

i=1 
while ((i <= Rowcount)) 
do 
    # Your code 
    ((i+= 1)) 
done 
0

你也可以試試這個語法:

#!/bin/ksh 
for f in $(wc -l $acList | awk -F " " '{print $1}') 
do 
     print "blabla : $f" 
done 
+0

在我的情況Rowcount值是3,我已經嘗試過你的命令,但它只打印一次。我想要一組操作來完成'Rowcount'的次數(這裏是3)。 – 2014-09-22 09:14:12

+0

@ user215827我看到了(但不明白),現在我無法測試它,對不起 – 2014-09-22 09:18:12