<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Perl assistance parsing sysconfig-m in ONTAP Discussions</title>
    <link>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36034#M8545</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I had to make a couple mods to run on my mac in regards to file name convention. You also needed the -L option in the ASUP fetch script call.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My input file is structured 1 serial per line, if you need it in a space or comma delimited list it is easy enough to parse but require additional code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this out: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="p1"&gt;#!/usr/bin/perl &lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;use &lt;/SPAN&gt;warnings&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;use &lt;/SPAN&gt;strict&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### Global variables&lt;/P&gt;&lt;P class="p1"&gt;###&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s1"&gt;my &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;args&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;cust&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;file&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count_host&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;root&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;tmpFile&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### check args&lt;/P&gt;&lt;P class="p1"&gt;#&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;#ARGV&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;== &lt;/SPAN&gt;&lt;SPAN class="s5"&gt;1 &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;### there should be four arguments&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $&lt;SPAN class="s4"&gt;cust&lt;/SPAN&gt; &lt;SPAN class="s4"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;$&lt;SPAN class="s4"&gt;ARGV&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;[&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;];&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;file&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s4"&gt;&amp;nbsp; &lt;/SPAN&gt;= &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;ARGV&lt;/SPAN&gt;[&lt;SPAN class="s5"&gt;1&lt;/SPAN&gt;];&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;else &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;### else wrong number of arguments&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"\nUsage: disk_rpt.pl &amp;lt;customer&amp;gt; &amp;lt;file&amp;gt;\n\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"&amp;lt;file&amp;gt; is the name of a text file containing serial numbers\n\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;exit &lt;/SPAN&gt;&lt;SPAN class="s5"&gt;1&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;#end if&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count&lt;SPAN class="s2"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count_host&lt;SPAN class="s2"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;#$root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "\\ntstp";&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;root&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s7"&gt;""&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;#$tmpFile&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "$root\\temp.txt";&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;tmpFile&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s7"&gt;"temp.txt"&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### cycle through files listed in file denoted by command-line argument&lt;/P&gt;&lt;P class="p1"&gt;###&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s6"&gt;open &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;SYSTEMS&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;, &lt;/SPAN&gt;"$file"&lt;SPAN class="s2"&gt;) or &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;die &lt;/SPAN&gt;"cannot open systems file\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p3"&gt;FILER&lt;SPAN class="s2"&gt;: &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;while &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;&amp;lt;SYSTEMS&amp;gt; &lt;SPAN class="s2"&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;my &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;leading&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;host_tag&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;hostname&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serialno&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serialnumber&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;part&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm_serial&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;_&lt;SPAN class="s2"&gt;; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;chop &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;system &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;"perl ./ntstp_asup_fetch.pl -s SYSCONFIG-M -L -w ${serial} &amp;gt; $tmpFile" &lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;open &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;SYSCONFIG&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;, &lt;/SPAN&gt;"$tmpFile"&lt;SPAN class="s2"&gt;) or &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;die &lt;/SPAN&gt;"cannot open $tmpFile\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;while &lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;&amp;lt;SYSCONFIG&amp;gt; &lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;(&lt;SPAN class="s1"&gt;m/hostname/&lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;leading&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;host_tag&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;hostname&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;serialno&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;serialnumber&lt;/SPAN&gt;) = &lt;SPAN class="s6"&gt;split&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;SPAN class="s8"&gt;#end if&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;m/DIMM/&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;leading&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;dimm&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;part&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;dimm_serial&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;count&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;++; &lt;/SPAN&gt;#checking how many times it is running through&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;leading&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;part&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm_serial&lt;SPAN class="s2"&gt;) = &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;split&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s7"&gt;'!'&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"#$count&amp;nbsp; | ${serial} | ${dimm} | ${part} |${dimm_serial}\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/SPAN&gt;#end while SYSCONFIG&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s6"&gt;close &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;SYSCONFIG &lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;(-&lt;SPAN class="s3"&gt;f $&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;tmpFile&lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="s6"&gt;unlink &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;tmpFile&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;#system ("del ${root}\\temp.txt");&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;#end while FILER&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 22 May 2013 02:59:05 GMT</pubDate>
    <dc:creator>lewisn</dc:creator>
    <dc:date>2013-05-22T02:59:05Z</dc:date>
    <item>
      <title>Perl assistance parsing sysconfig-m</title>
      <link>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36024#M8542</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need to pull some DIMM information out of a sysconfig-m file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a script that can pull the data and gives me what I need, but it is looping around 4 times before exiting.&lt;/P&gt;&lt;P&gt;Can someone give me an idea of what is going on? I am very PERL challenged.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;### check args&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;if ($#ARGV == 1) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ### there should be four arguments&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$cust&amp;nbsp;&amp;nbsp; = $ARGV[0];&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$file&amp;nbsp;&amp;nbsp; = $ARGV[1];&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;} else {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ### else wrong number of arguments&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print "\nUsage: disk_rpt.pl &amp;lt;customer&amp;gt; &amp;lt;file&amp;gt;\n\n";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print "&amp;lt;file&amp;gt; is the name of a text file containing serial numbers\n\n";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;exit 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;} #end if&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;$count=0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;$count_host=0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;########################################################################&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;### Global variables&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;###&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;$root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "\\ntstp";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;########################################################################&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;########################################################################&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;### cycle through files listed in file denoted by command-line argument&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;###&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;open (SYSTEMS, "$file") or die "cannot open systems file\n";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;FILER: while ( &amp;lt;SYSTEMS&amp;gt; ) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; $serial = $_; chop $serial;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;system ("${root}\\ntstp_asup_fetch.pl -s SYSCONFIG-M -w ${serial} &amp;gt; ${root}\\temp.txt" );&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;open (SYSCONFIG, "${root}\\temp.txt") or die "cannot open temp.txt\n";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while ( &amp;lt;SYSCONFIG&amp;gt; ) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (m/hostname/) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;($leading,$host_tag,$hostname,$serialno,$serialnumber) = split;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} #end if&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (m/DIMM/) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$leading = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$dimm = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$part = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$dimm_serial = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$count ++; #checking how many times it is running through&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ($leading,$dimm,$part,$dimm_serial) = split('!');&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print "#$count&amp;nbsp; | ${serial} | ${dimm} | ${part} |${dimm_serial}\n";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} #end while SYSCONFIG&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em; font-family: 'courier new', courier;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;close ( SYSCONFIG );&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;system ("del ${root}\\temp.txt");&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;} #end while FILER&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Output I am getting: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;C:\ntstp&amp;gt;dimm_rpt.pl avnet test.txt&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#1&amp;nbsp; | 600000248761 | DIMM-1 | 40-01-1241-01176538 |VR7VA127258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#2&amp;nbsp; | 600000248761 | DIMM-NV1 | 40-01-1244-01181020 |VR7VA567258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#3&amp;nbsp; | 600000248761 | DIMM-1 | 40-01-1241-01176538 |VR7VA127258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#4&amp;nbsp; | 600000248761 | DIMM-NV1 | 40-01-1244-01181020 |VR7VA567258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#5&amp;nbsp; | 600000248761 | DIMM-1 | 40-01-1241-01176538 |VR7VA127258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#6&amp;nbsp; | 600000248761 | DIMM-NV1 | 40-01-1244-01181020 |VR7VA567258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#7&amp;nbsp; | 600000248761 | DIMM-1 | 40-01-1241-01176538 |VR7VA127258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;#8&amp;nbsp; | 600000248761 | DIMM-NV1 | 40-01-1244-01181020 |VR7VA567258GBZN3&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jun 2025 06:04:28 GMT</pubDate>
      <guid>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36024#M8542</guid>
      <dc:creator>willd</dc:creator>
      <dc:date>2025-06-05T06:04:28Z</dc:date>
    </item>
    <item>
      <title>Re: Perl assistance parsing sysconfig-m</title>
      <link>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36030#M8543</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Can you provide the test.txt and the temp.txt contents?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 May 2013 23:05:25 GMT</pubDate>
      <guid>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36030#M8543</guid>
      <dc:creator>eric8</dc:creator>
      <dc:date>2013-05-21T23:05:25Z</dc:date>
    </item>
    <item>
      <title>Re: Perl assistance parsing sysconfig-m</title>
      <link>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36034#M8545</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I had to make a couple mods to run on my mac in regards to file name convention. You also needed the -L option in the ASUP fetch script call.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My input file is structured 1 serial per line, if you need it in a space or comma delimited list it is easy enough to parse but require additional code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this out: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="p1"&gt;#!/usr/bin/perl &lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;use &lt;/SPAN&gt;warnings&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;use &lt;/SPAN&gt;strict&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### Global variables&lt;/P&gt;&lt;P class="p1"&gt;###&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s1"&gt;my &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;args&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;cust&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;file&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count_host&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;root&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;tmpFile&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### check args&lt;/P&gt;&lt;P class="p1"&gt;#&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;#ARGV&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;== &lt;/SPAN&gt;&lt;SPAN class="s5"&gt;1 &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;### there should be four arguments&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $&lt;SPAN class="s4"&gt;cust&lt;/SPAN&gt; &lt;SPAN class="s4"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;$&lt;SPAN class="s4"&gt;ARGV&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;[&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;];&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;file&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s4"&gt;&amp;nbsp; &lt;/SPAN&gt;= &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;ARGV&lt;/SPAN&gt;[&lt;SPAN class="s5"&gt;1&lt;/SPAN&gt;];&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;else &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;### else wrong number of arguments&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"\nUsage: disk_rpt.pl &amp;lt;customer&amp;gt; &amp;lt;file&amp;gt;\n\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"&amp;lt;file&amp;gt; is the name of a text file containing serial numbers\n\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;exit &lt;/SPAN&gt;&lt;SPAN class="s5"&gt;1&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;#end if&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count&lt;SPAN class="s2"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;count_host&lt;SPAN class="s2"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;#$root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "\\ntstp";&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;root&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s7"&gt;""&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;#$tmpFile&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "$root\\temp.txt";&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;tmpFile&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s7"&gt;"temp.txt"&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p1"&gt;########################################################################&lt;/P&gt;&lt;P class="p1"&gt;### cycle through files listed in file denoted by command-line argument&lt;/P&gt;&lt;P class="p1"&gt;###&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s6"&gt;open &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;SYSTEMS&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;, &lt;/SPAN&gt;"$file"&lt;SPAN class="s2"&gt;) or &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;die &lt;/SPAN&gt;"cannot open systems file\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p3"&gt;FILER&lt;SPAN class="s2"&gt;: &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;while &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;&amp;lt;SYSTEMS&amp;gt; &lt;SPAN class="s2"&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;my &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;leading&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;host_tag&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;hostname&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serialno&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serialnumber&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;part&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm_serial&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;= &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;_&lt;SPAN class="s2"&gt;; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;chop &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;serial&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p7"&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;system &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;"perl ./ntstp_asup_fetch.pl -s SYSCONFIG-M -L -w ${serial} &amp;gt; $tmpFile" &lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;open &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;SYSCONFIG&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;, &lt;/SPAN&gt;"$tmpFile"&lt;SPAN class="s2"&gt;) or &lt;/SPAN&gt;&lt;SPAN class="s1"&gt;die &lt;/SPAN&gt;"cannot open $tmpFile\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;while &lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;&amp;lt;SYSCONFIG&amp;gt; &lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;(&lt;SPAN class="s1"&gt;m/hostname/&lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;leading&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;host_tag&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;hostname&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;serialno&lt;/SPAN&gt;,&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;serialnumber&lt;/SPAN&gt;) = &lt;SPAN class="s6"&gt;split&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;SPAN class="s8"&gt;#end if&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;m/DIMM/&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;leading&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;dimm&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;part&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;dimm_serial&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;= &lt;SPAN class="s5"&gt;0&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;count&lt;/SPAN&gt;&lt;SPAN class="s3"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;++; &lt;/SPAN&gt;#checking how many times it is running through&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;leading&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;part&lt;SPAN class="s2"&gt;,&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;dimm_serial&lt;SPAN class="s2"&gt;) = &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;split&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s7"&gt;'!'&lt;/SPAN&gt;&lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p6"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;print &lt;/SPAN&gt;"#$count&amp;nbsp; | ${serial} | ${dimm} | ${part} |${dimm_serial}\n"&lt;SPAN class="s2"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/SPAN&gt;#end while SYSCONFIG&lt;/P&gt;&lt;P class="p2"&gt;&lt;/P&gt;&lt;P class="p3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s6"&gt;close &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;( &lt;/SPAN&gt;SYSCONFIG &lt;SPAN class="s2"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s1"&gt;if &lt;/SPAN&gt;(-&lt;SPAN class="s3"&gt;f $&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;tmpFile&lt;/SPAN&gt;) {&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="s6"&gt;unlink &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;$&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;tmpFile&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;#system ("del ${root}\\temp.txt");&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;} &lt;/SPAN&gt;#end while FILER&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 May 2013 02:59:05 GMT</pubDate>
      <guid>https://community.netapp.com/t5/ONTAP-Discussions/Perl-assistance-parsing-sysconfig-m/m-p/36034#M8545</guid>
      <dc:creator>lewisn</dc:creator>
      <dc:date>2013-05-22T02:59:05Z</dc:date>
    </item>
  </channel>
</rss>

