当前位置: 技术问答>linux和unix
如何在一个文件中替换字符串
来源: 互联网 发布时间:2016-07-05
本文导语: 假设文件 listener.ora内容如下,如何将1.1.1.1替换为2.2.2.2 LISTENER = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=1521)) (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY))) SID_LIST_LISTENER= (SID_LIST= (SID_DE...
假设文件 listener.ora内容如下,如何将1.1.1.1替换为2.2.2.2
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=chrdb)
(ORACLE_HOME=/opt/oracle/product/11.1.0/db_1)
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=chrdb)
(ORACLE_HOME=/opt/oracle/product/11.1.0/db_1)
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
|
NEW_IP="2.2.2.2"
OLD_IP=`cat /listener.ora | grep "HOST" | awk -F= '{print $4}' | awk -F) '{print $1}'`
replace "$OLD_IP" "$LOCAL_IP" -- listener.ora
OLD_IP=`cat /listener.ora | grep "HOST" | awk -F= '{print $4}' | awk -F) '{print $1}'`
replace "$OLD_IP" "$LOCAL_IP" -- listener.ora
|
sed -i 's/1.1.1.1/2.2.2.2/g' listener.ora