我的计算机上有一个目录,其中包含我在网上找到的用于研究的整个数据库。这个数据库包含数千个文件,所以为了做我需要的事情,我一直在研究文件 i/o 的东西。一位程序员朋友建议使用 bash/awk。我写了我的代码:
#!/usr/bin/env awk
ls -l|awk'
BEGIN {print "Now running"}
{if(NR == 17 / $1 >= 0.4 / $1 <= 2.5)
{print $1 > wavelengths.txt;
print $2 > reflectance.txt;
print $3 > standardDev.txt;}}END{print "done"}'
当我把它放到我的控制台中时,我已经在我需要访问的文件的目录中了。我需要的数据从每个文件的第 17 行开始。数据如下所示:
some number some number some number
some number some number some number
. . .
. . .
. . .
我想在第一列的值为 0.4(或大约)时访问数据并获取信息,直到第一列的值约为 2.5。第一列代表波长。我想稍后验证它们对于每个文件都是相同的,所以我将它们复制到一个文件中。第二列代表反射率,我希望这是一个单独的文件,因为稍后我将获取此信息并从中构建一个数据矩阵。第三列是反射率的标准偏差。
我现在遇到的问题是,当我运行此代码时,出现以下错误:没有这样的文件或目录
请,如果有人能告诉我为什么我可能会收到这个错误,或者可以指导我如何为我正在尝试做的事情编写代码......我将非常感激。