linux shell 按行合并拼接两个文件

本文介绍了一个用于 Oracle 数据库中可插拔数据库(PDB)文件重命名的 shell 脚本。该脚本通过读取两个文件列表,生成 SQL 重命名语句,实现批量文件名更改,适用于数据库维护和迁移场景。

    export P5FileName=${T_LOG}/PDB5fileNameTarget.txt
    export CurP5FileName=${T_LOG}/PDB5fileNameTarget_T2.txt
    export renameScript=${T_LOG}/PDB5rename.sql


generateSQLscript()
{
File1=$1
File2=$2

while
    IFS=" " read -r x rest <&3
    IFS=" " read -r y  rest <&4
do
    echo "alter database rename file '$x' to '$y'; "
done 3<${File1} 4< ${File2}
}

generateSQLscript ${CurP5FileName} ${P5FileName}  > ${renameScript}

echo "The rename script for PDB5 is :"
cat ${renameScript}

 

eg.

echo "1 1 1" > tmp1
echo "2 2 2" >> tmp1
echo "3 3 3" >> tmp1

echo "a,b,c" > tmp2
echo "a,b,c" >> tmp2
echo "a,b,c" >> tmp2
while
    IFS=" " read -r x rest <&3
    IFS="," read -r y z rest <&4
do
    echo "$x:$y:$z"
done 3<tmp1 4<tmp2
1:a:b
2:a:b
3:a:b

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值