[問題] 兩個含有pack的hash的資料比對

看板Perl作者時間15年前 (2010/09/09 22:37), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
不好意思,再請教各位前輩一個問題 我目前有兩個hash,兩個hash內分別用pack壓了一些設定檔的資料進去 像是 $a{'a'} = pack("A A A", 'a', 'b', 'c'); 這樣 而我目前想要針對這兩個hash比較(一個存的是更新後的資料,一個是舊的) 當新的資料與舊的資料不同時就把舊的蓋掉 我目前有想到 1. if(unpack("@ A @", %a) ne unpack("@ A @", %b)){ .... } 當兩者不相等時在執行替換,但是我要替換的可能只是pack裡面某一項,不知道這樣是否 行得通呢? 2. { my($aa, $ab, $ac) = unpack("A A A", %a); my($ba, $bb, $bc) = unpack("A A A", %b); if($aa ne $ba){ ... } if... } 把每個hash所對應的東西解開在一筆一筆比對,但是當資料量龐大的時候這樣似乎不是一 個很好的做法? 再次感謝各位前輩的解答 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.216.151.76

09/10 00:38, , 1F
試試 Net::Libdnet::Arp ?
09/10 00:38, 1F

09/10 19:53, , 2F
配上 Net::Ping可以了 感恩~~~
09/10 19:53, 2F
※ 編輯: verybada 來自: 61.216.151.77 (09/10 20:13)
文章代碼(AID): #1CYF4kZc (Perl)
文章代碼(AID): #1CYF4kZc (Perl)