linux如何实现批量更新软连接的脚本-创新互联

小编给大家分享一下linux如何实现批量更新软连接的脚本,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

创新互联主要从事网站设计制作、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务阿荣,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

场景为有一个路径的软连接要更新目标,但是软连接有两个问题一是数量比较大,二是路径格式是A目录下面的B目录下面的C目录下进行操作,因此写脚本进行批量操作:

#!/bin/bash
source /etc/profile
#DATA_PATH="/data/share/6666/www"
DATA_PATH="/data/pool1/888888"
cd $DATA_PATH
DIR_NAME=" a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 "
for DIR1 in ${DIR_NAME};do
#echo ${DATA_PATH}/$DIR1
test -d ${DATA_PATH}/$DIR1
if [ $? -eq 0 ];then
cd ${DATA_PATH}/$DIR1
echo "第一级循环目录:",pwd
for DIR2 in ${DATA_PATH}/${DIR1}/${DIR_NAME};do
test -d ${DATA_PATH}/$DIR1/${DIR2}
if [ $? -eq 0 ];then
cd ${DATA_PATH}/$DIR1/${DIR2}
echo "第二级循环目录:",pwd
for NAME in /bin/ls -l ${DATA_PATH}/${DIR1}/${DIR2};do
if [ -L ${DATA_PATH}/${DIR1}/${DIR2}/${NAME} ];then
echo "第二级目录获取到的域名--->,$NAME"
for LINK_NAME in ${DATA_PATH}/${DIR1}/${DIR2}/${NAME};do
if [ -L ${LINK_NAME} ];then
cd ${DATA_PATH}/${DIR1}/${DIR2}
echo "域名源链接路径:,$LINK_NAME"
echo "当前绝对路径,pwd"
S_NAME1=ls -l ${LINK_NAME} | awk '{print $9}'
echo "源链接域名:,${S_NAME1}"
############################################################
D_NAME=ls -l ${LINK_NAME} | awk -F "/data/share/www/" '{print $2}'
echo "目的链接路径:, ../../${D_NAME}"
############################################################
rm -rf ${S_NAME1}
ln -sv ../../${D_NAME}  ${S_NAME1}
echo -e "当前域名处理完成,准备换行,\n"
fi
shift
done
shift
fi
shift
done
fi
shift
done
fi
shift
done

看完了这篇文章,相信你对“linux如何实现批量更新软连接的脚本”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享题目:linux如何实现批量更新软连接的脚本-创新互联
文章起源:http://ybzwz.com/article/codegj.html