Note that there are some explanatory texts on larger screens.

plurals
  1. POOptimization of find and Replace Script
    primarykey
    data
    text
    <p>I developed a script which parse texts and on specific condition it replace text and generate new file.</p> <p>I would like to know if i can optimize it or any alternative suggetions</p> <pre><code>cat *inputparams.txt | awk -F"|" 'BEGIN {OFS=","} $2==1&amp;&amp;$3==1{$3="Subscription Creation without Previous"} $2==1&amp;&amp;$3==5{$3="Offer Upgrade"} $2==1&amp;&amp;$3==6{$3="Offer Downgrade"} $2==1&amp;&amp;$3==7{$3="Campaign Extend"} $2==1&amp;&amp;$3==8{$3="Campaign Change"} $2==1&amp;&amp;$3==27{$3="Subscription Update"} $2==2&amp;&amp;$3==2{$3="Charging Renewal"} $2==2&amp;&amp;$3==3{$3="Subscription Reactivation"} $2==2&amp;&amp;$3==4{$3="Subscription Reactivation with Recharge Monitoring"} $2==2&amp;&amp;$3==8 {$3="Campaign Change" } $2==2&amp;&amp;$3==30 {$3="Limited Service"} $2==3&amp;&amp;$3==11{$3="Cancellation"} $2==3&amp;&amp;$3==17{$3="Subscriber Account Reactivation"} $2==4&amp;&amp;$3==11{$3="Cancellation"} $2==5&amp;&amp;$3==11{$3="Cancellation"} $2==5&amp;&amp;$3==12{$3="Expiration"} $2==5&amp;&amp;$3==13{$3="Inactivation due to Charging"} $2==5&amp;&amp;$3==14{$3="Inactivation due to Ceased Account"} $2==5&amp;&amp;$3==15 {$3="Inactivation due to Payment Method Change"} $2==5&amp;&amp;$3==16 {$3="Inactivation due to Ownership Change"} $2==5&amp;&amp;$3==18 {$3="Inactivation due to Offer Upgrade"} $2==5&amp;&amp;$3==19 {$3="Inactivation due to Offer Downgrade" } $2==6&amp;&amp;$3==9{$3="Campaign Schedule"} $2==6&amp;&amp;$3==10{$3="Offer Schedule"} $1==5 &amp;&amp; $2==2{$2="RENEWAL"} $1==4 &amp;&amp; $2==2{$2="SUBS. CREATE RENEWAL AOC"} $1==6 &amp;&amp; $2==3{$2="REFUND"} $1==4 &amp;&amp; $2==5 {$2="INACTIVATION"} $1==5 &amp;&amp; $2==4{$2="PENALTY"} $1==1{$1="RESERVE"} $1==2{$1="COMMIT"} $1==3{$1="ROLLBACK"} $1==5 &amp;&amp; $2==1{$2="SUBS. CREATE DIRECT DEBIT"} $2==1 {$2="CREATION"} {print $1,$2,$3,$4,$5,$8}' &gt; $RECON_PATH/tx_id.txt cat *inputparams.txt | awk -F"[" '{print $4}' | awk -F"]" '{print $1}' | awk -F"," 'BEGIN {OFS=","} $2==1{$2="POSTPAID"} $2==2{$2="PREPAID"} {print $2,$1}' &gt; $RECON_PATH/msisdn_payment cat *inputparams.txt | awk -F"," '{print $3 }' &gt; $RECON_PATH/package paste -d"," $RECON_PATH/tx_id.txt $RECON_PATH/package $RECON_PATH/msisdn_payment &gt; $RECON_PATH/final.txt </code></pre> <p>Following is sample record</p> <pre><code>5|2|3|rfe-29883066|9840311190936312183|2.0|49.0|20131119093631|[[],4900671,SOCIAL_DATA,null,SOCIAL DATA,20130710000000,,,[971508592346,2],null,7012183,20130926190549,[[{LIMITED_PERIOD_END_DATE=20131110093613}{INITIAL_CHARGED_AMOUNT=49.0}{INITIAL_CHARGE_OPTION=1}{ENE_EVENT_ID=24645862}{FULFILL_ON_RESERVE=0}],false,false,null,4900672,SOCIAL DATA,20130710000000,2,20131119093631,0,2,[111111111111,2],USSD,2592000000,[{[{PACKAGE_ID_ONE_TIME_NORMAL_QOS=2000002935}{PREFERRED_PACKAGE_ID=PACKAGE_ID_AUTO_RN}{PACKAGE_ID_ONE_TIME_WITH_THROTTLING=2000002935}{PACKAGE_ID_AUTO_RN=2000002881}{PROVISIONED_PACK_ID=2000002935}{PROVISIONED_PACK_TYPE=PACKAGE_ID_ONE_TIME_WITH_THROTTLING}],DATAN_SOCIAL_DATA,4900667,DATAN,DATAN,[]}{[{PACKAGE_ID_ONE_TIME_NORMAL_QOS=2000002922}{PREFERRED_PACKAGE_ID=PACKAGE_ID_AUTO_RN}{PACKAGE_ID_ONE_TIME_WITH_THROTTLING=2000002922}{PACKAGE_ID_AUTO_RN=2000002880}{PROVISIONED_PACK_ID=2000002922}{PROVISIONED_PACK_TYPE=PACKAGE_ID_ONE_TIME_WITH_THROTTLING}],DATAN_DATA_SOCIAL,4900669,DATAN,DATAN,[]}{[{PACKAGE_ID_ONE_TIME_NORMAL_QOS=2000003031}{PREFERRED_PACKAGE_ID=PACKAGE_ID_AUTO_RN}{PACKAGE_ID_ONE_TIME_WITH_THROTTLING=2000003031}{PACKAGE_ID_AUTO_RN=2000003030}],DATAN_SOCIAL_THROTT,5400425,DATAN,DATAN,[]}{[{RATE_PLAN_ID=629120}],MKTWSSOCIALDATA,4900665,CMN,CMN,[]}],2,null,6912967,20130926190549]] </code></pre> <p>Regards</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload