通過shell指令碼修改xml檔案中的某行記錄

來源:互聯網
上載者:User

通過shell指令碼修改xml檔案中的某行記錄

跟之前一樣,假設有如下的xml檔案:

web.xml中有如下內容:

<param-name>cookieName</param-name><param-value>sessionName</param-value>

需求:現在需要利用shell指令碼替換掉cookieName對應的value值,

利用shell實現方式如下:

shell指令碼部分:


declare -i Dline

getline() 
   {
grep -n "cookieName" ${DOMAIN_HOME}/portal/ROOT/WEB-INF/web.xml | head -1 | cut -d ":" -f 1;
   }


getlinenum() 
{
awk "BEGIN{a=`getline`;b="1";c=(a+b);print c}";
}


Dline=`getlinenum`;
echo "line is ${Dline}";
sed -i "${Dline},${Dline}s/.*/                  \<param-value\>替換的value值\<\/param-value\>/g" path/web.xml


說明:這個跟之前的替換屬性檔案的區別在於,這個是精確定位到行的,然後替換正行code。

           這個xml和properties 中都是預設需要替換的內容是唯一的。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.