{"id":2221,"date":"2017-12-08T05:06:58","date_gmt":"2017-12-08T05:06:58","guid":{"rendered":"http:\/\/www.scmgalaxy.com\/tutorials\/?p=2221"},"modified":"2020-01-09T09:45:37","modified_gmt":"2020-01-09T09:45:37","slug":"string-manipulation-exercise","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/string-manipulation-exercise\/","title":{"rendered":"String manipulation exercise"},"content":{"rendered":"<p><strong>mnanjala created the topic: String manipulation exercise<\/strong><\/p>\n<p>Hi Guys,<\/p>\n<p>Say there is a text file inject.dat, it has 5 entries as below<br \/>\nPKGNAME=Project-debug<br \/>\nOLD_VERSION=1.0.0<br \/>\nNEW_VERSION=1.0.1<br \/>\nPRODUCT NUMBER=1<br \/>\nRELASE DATE=11\/11\/2011<\/p>\n<p>How we could write shell script so I can read each line replace everything after &#8220;=&#8221;sign, with new value, example run<br \/>\n.\/inject.sh $PKGNAME $OLD_VERSION $NEW_VERSION $PRODUCT_NUMBER $RELEASE_DATE , so it should update the inject.dat with newer value what ever I give as parameter? Any idea?<\/p>\n<p>Hint getopts.<\/p>\n<p><strong>rajeshkumar replied the topic: Re: String manipulation exercise<\/strong><br \/>\nHi praveen,<\/p>\n<p>getopts is the best way to implement. I could not get much time to look into it. However, please find my quick code to implement the same. Please change the file name as needed. if time permits, tomorrow i will tell you more better way.<\/p>\n<p><code>for line in $(< raj.txt)  \ndo\n    if [ $# -eq 5 ]\n    then\n        case $line in  \n            PKGNAME=$1)         eval $line ;;  \n            OLD_VERSION=$2)     eval $line ;;\n            NEW_VERSION=$3)     eval $line ;;\n            PRODUCT_NUMBER=$4)  eval $line ;;\n            RELASE_DATE=$5)     eval $line ;;\n            *) ;;  \n        esac\n    fi\ndone\n \n \necho PKGNAME=$1 >> temp.txt<br \/>\necho OLD_VERSION=$2 >> temp.txt<br \/>\necho NEW_VERSION=$3 >> temp.txt<br \/>\necho PRODUCT_NUMBER=$4 >> temp.txt<br \/>\necho RELASE_DATE=$5 >> temp.txt<\/p>\n<p>mv temp.txt raj2.txt<\/code><\/p>\n<p>Regards,<br \/>\nRajesh Kumar<br \/>\nTwitt me @ <a href=\"http:\/\/twitter.com\/RajeshKumarIn\" target=\"_blank\" rel=\"noopener\">twitter.com\/RajeshKumarIn<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>mnanjala created the topic: String manipulation exercise Hi Guys, Say there is a text file inject.dat, it has 5 entries as below PKGNAME=Project-debug OLD_VERSION=1.0.0 NEW_VERSION=1.0.1 PRODUCT NUMBER=1 RELASE DATE=11\/11\/2011 How we could write shell script so I can read each line replace everything after &#8220;=&#8221;sign, with new value, example run .\/inject.sh $PKGNAME $OLD_VERSION $NEW_VERSION $PRODUCT_NUMBER&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","_joinchat":[],"footnotes":""},"categories":[454],"tags":[466],"class_list":["post-2221","post","type-post","status-publish","format-standard","hentry","category-shell-script","tag-string"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/2221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=2221"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/2221\/revisions"}],"predecessor-version":[{"id":2222,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/2221\/revisions\/2222"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=2221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=2221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=2221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}