2

我有一个包含如下数据的文件:

4  1
7  12
2  5
4  4
6  67
12  5

通过命令行,我可以将每一行拆分成一个数组,如下所示:

perl -F'\s+' -ane 'print $F[0]' file

因此将打印所有第一个字段。现在上面的命令将每一行转换为一个数组。以类似的方式,这可以通过创建一个散列来完成,其中键作为第一个字段,每个键的值是第二个字段。?

4

2 回答 2

4

试试这个:

perl -MData::Dumper -ane '$X{$F[0]}=$F[1]}{print Dumper \%X' file
于 2012-09-13T09:13:05.323 回答
2

是的,这是可以做到的。

perl -MData::Dumper -e '%a = map { (split)[0,1] } <ARGV>;print Dumper \%a' dt.txt
于 2012-09-13T09:14:15.250 回答