0

至今:

find . -name 'prob*' > problems.txt
NUMOFFILES=$(wc -l problems.txt)
for((j = 1; j < NUMOFFILES; j++))
do

*insert imaginary commands here*

done

但是,我不断收到消息说这是一个无效的算术运算。我的猜测是我从 NUMOFFILES 得到的答案是字符串的形式。我的问题是如何将文本文件中的行数设置为 for 循环的变量。

谢谢!

-edit1:我对 Unix 也很陌生,这是一个作业。因此,我要求任何善良的灵魂给我的解决方案都考虑到这一点。谢谢!

4

1 回答 1

0

您不使用反引号是否有特殊原因?

NUMOFFILES=`wc -l < problems.txt`

我认为您使用的方法可能是仅限 Bash-4 的构造,我让自己一直尝试在 3.x 的工作机器上使用它们。我认为它使 NUMOFFILES 未分配,因此您无法对其进行比较。

for 循环看起来也很可疑。如果这不是一个 shell 脚本,请说出来。

于 2013-10-19T03:22:18.643 回答