如何在bash中从文本文件读取坐标?

如何在bash中从文本文件读取坐标?

我需要处理一些具有特定坐标的图像。我拥有脚本的大部分内容,但“读取坐标”部分。为此,我放置了一个包含坐标的文本文件;像这样(只是一个例子):

V2016057174800.L1A_SNPP.nc 30.1 30 -80 -80.1, 29.1 29 -79 -79.1, 28.1 28 -78 -78.1;
V2016057193000.L1A_SNPP.nc 29.1 29 -79 -79.1, 28.1 28 -78 -78.1;
V2016297193000.L1A_SNPP.nc 28.1 28 -78 -78.1;

但我在 bash 中读取它并命名变量(北、南、西、东)时遇到问题。我不知道什么是最好的方法来做到这一点,但到目前为止我有以下代码:

while read L1Afullname; do

    L1Aname=${L1Afullname##*/}
    L1Aname=${L1Aname%.*.*}
    echo "$L1Aname"

while read $L1Aname north south west east in $Coordinates; do
    north=${L1Aname*/}

有什么建议/问题吗?这个还在开发中,..

答案1

我将处理您的文件中有多个图像坐标的情况file.txt。在这种情况下,您可以将每个图像的坐标保存在文档的每一行中,以图像的名称开始该行。前任:

Name1 north1 south1 west1 east1
Name2 north2 south2 west2 east2
...

在 bash 中,您必须创建一个 while 来读取文件,并将每一行组件保存在变量中,如下所示:

while read name north south west east
do
   #your code
done < file.txt;

然后您可以处理多个图像并获取有关每个图像的所有信息。

相关内容