1

我在 linux 中有一个带有以下文本的文本文件

;ip address    hostname     put-location      alt-put-location                tftpserver
192.168.1.1    r01-lab1-net /mnt/nas1/fgbu/   /opt/fgbu/devicebackup          192.168.1.254
192.168.1.2    r01-lab2-net /mnt/nas2/fgbu/   /opt/fgbu/backup                192.168.1.222
...
...

现在我想提取数组中的每个值以供以后使用。例如,如果我运行以下命令

echo arry[2][2]

它应该给出如下输出:

r01-lab2-net

一种方法是使用 for 循环,但我不明白我将如何移动到下一行。也请让我知道是否有更好的使用 awk 的方法。或以任何其他方式在 bash 中获取这些值。

4

1 回答 1

0

bash 不支持二维数组,但您可以使用其他 bash 实用程序。

例如。awk 支持二维数组。在这里阅读更多信息:http: //porthos.ist.utl.pt/docs/gawk/gawk_9.html#SEC128

于 2013-07-26T10:59:20.443 回答