在 CentOS(其实就是 Linux 通用做法)里,批量建软连接常见有几种方式,下面按使用场景给你总结一下。
/data/src/* 全部软链到 /data/dst/for f in /data/src/*; do
ln -s "$f" /data/dst/
done
只链文件(排除目录):
for f in /data/src/*; do
[ -f "$f" ] && ln -s "$f" /data/dst/
done
declare -A links=(
[nginx]=/usr/local/nginx
[php]=/usr/local/php
)
for name in "${!links[@]}"; do
ln -s "${links[$name]}" "/usr/bin/$name"
done
list.txtsrc1 -> dst1
src2 -> dst2
while read src dst; do
ln -s "$src" "$dst"
done < list.txt
find 批量建软连接/data/src 下所有文件软链到 /data/dstfind /data/src -maxdepth 1 -type f -exec ln -s {} /data/dst/ \;
ln -sf 源文件 目标
批量示例:
for f in /data/src/*; do
ln -sf "$f" /data/dst/
done
ln -s 源 目标
-s:软连接(符号链接)-f:强制覆盖-n:把目标当普通文件(防止链到目录里)如果你能说一下 具体场景(比如:批量链接日志?配置?整个目录?),我可以直接给你一条最合适命令。