bash 判断 /opt/wslibs-cuda11.8 是否为软连接, 如果是,获取连接目的目录并自动创建

以下是实现该功能的 Bash 脚本:

bash
#!/bin/bash

LINK_PATH=“/opt/wslibs-cuda11.8”

检查是否为软链接

if [ -L "KaTeX parse error: Expected 'EOF', got '#' at position 24: …H" ]; then #̲ 获取软链接的绝对目标路径 …(readlink -f “$LINK_PATH”)

# 提取目录部分(去掉文件名)
TARGET_DIR=$(dirname "$TARGET_PATH")

# 在当前目录创建对应目录结构
mkdir -p "${PWD}${TARGET_DIR#/}"  # 转换为当前目录下的路径

echo "软链接目标目录已创建:${PWD}${TARGET_DIR#/}"

else
echo “$LINK_PATH 不是软链接”
exit 1
fi

关键点解释:

软链接检测
[ -L "$LINK_PATH" ] 检查指定路径是否为符号链接

获取真实路径
readlink -f 解析软链接并返回绝对路径(包括处理多级链接)

路径转换
${TARGET_DIR#/} 去除路径开头的 /,将绝对路径转换为相对路径

目录创建
mkdir -p 递归创建目录,自动处理父目录

示例:

假设软链接指向 /usr/local/cuda-11.8,脚本会在当前目录创建:

./usr/local/cuda-11.8

使用方法:

将脚本保存为 create_link_dir.sh
赋予执行权限:
chmod +x create_link_dir.sh
运行脚本:
sudo ./create_link_dir.sh
(需要 root 权限修改 /opt 目录)

注意事项:

脚本会直接在 /opt 目录操作,请确保有足够权限
已存在的目录不会报错(mkdir -p 的特性)
支持包含空格的路径(通过引号包裹变量)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老黄编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值