在cshell中的while循环中嵌套while循环
Nesting while loop inside a while loop in cshell
我需要我的代码来读取编号在 1 到 4000 之间的文件。然后它会对这些文件做一些事情,我试图用以下代码将它们分成 500 个块。
#!/bin/tcsh
@ x = 1
@ looper = 1
while ($x < 3)
while ($looper < 500)
@filenumber = $x -1
@filenumber = $filenumber * 500
@filenumber = $filenumber + $looper
echo $filenumber
@looper += 1
done
@x += 1
done
我希望它以 500 为单位从 1 计数到 1000。但是当我尝试这个时,脚本只计数到 500。有人知道这是为什么吗?
感谢您的帮助
答案是在@x +=1 行下方需要有一行重置 $looper 变量
@x += 1
@looper = 1
done
哎呀!!!
你需要在@looper = 1
外循环里面初始化,否则它只会初始化一次,并以值500开始第二次迭代。
@ x = 1
while ($x < 3)
@looper = 1 <-- here
while ($looper < 500)
@filenumber = $x -1
@filenumber = $filenumber * 500
@filenumber = $filenumber + $looper
echo $filenumber
@looper += 1
done
@x += 1
done
我需要我的代码来读取编号在 1 到 4000 之间的文件。然后它会对这些文件做一些事情,我试图用以下代码将它们分成 500 个块。
#!/bin/tcsh
@ x = 1
@ looper = 1
while ($x < 3)
while ($looper < 500)
@filenumber = $x -1
@filenumber = $filenumber * 500
@filenumber = $filenumber + $looper
echo $filenumber
@looper += 1
done
@x += 1
done
我希望它以 500 为单位从 1 计数到 1000。但是当我尝试这个时,脚本只计数到 500。有人知道这是为什么吗?
感谢您的帮助
答案是在@x +=1 行下方需要有一行重置 $looper 变量
@x += 1
@looper = 1
done
哎呀!!!
你需要在@looper = 1
外循环里面初始化,否则它只会初始化一次,并以值500开始第二次迭代。
@ x = 1
while ($x < 3)
@looper = 1 <-- here
while ($looper < 500)
@filenumber = $x -1
@filenumber = $filenumber * 500
@filenumber = $filenumber + $looper
echo $filenumber
@looper += 1
done
@x += 1
done