免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4937 | 回复: 8
打印 上一主题 下一主题

绝对路径如何转成相对路径 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-04-05 16:52 |只看该作者 |倒序浏览
如题, 好像有点难度阿. 搜遍论坛都没有人问过这个问题. 奇怪!!

论坛徽章:
0
2 [报告]
发表于 2006-04-05 18:38 |只看该作者
没有搞过,想见识一下,帮你顶也!

论坛徽章:
0
3 [报告]
发表于 2006-04-05 19:41 |只看该作者
我也帮你顶
wayy2008 该用户已被删除
4 [报告]
发表于 2006-04-05 21:08 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
5 [报告]
发表于 2006-04-05 21:28 |只看该作者
就是相对于shell执行的当前路径阿,换句话说就是相对pwd指向的路径呀

论坛徽章:
0
6 [报告]
发表于 2006-04-05 21:57 |只看该作者
原帖由 jruv 于 2006-4-5 21:28 发表
就是相对于shell执行的当前路径阿,换句话说就是相对pwd指向的路径呀


还是不明白你说的,举个例子先!

论坛徽章:
84
每日论坛发贴之星
日期:2015-12-29 06:20:00每日论坛发贴之星
日期:2016-01-16 06:20:00每周论坛发贴之星
日期:2016-01-17 22:22:00程序设计版块每日发帖之星
日期:2016-01-20 06:20:00每日论坛发贴之星
日期:2016-01-20 06:20:00程序设计版块每日发帖之星
日期:2016-01-21 06:20:00每日论坛发贴之星
日期:2016-01-21 06:20:00程序设计版块每日发帖之星
日期:2016-01-23 06:20:00程序设计版块每日发帖之星
日期:2016-01-31 06:20:00数据库技术版块每日发帖之星
日期:2016-01-16 06:20:00程序设计版块每日发帖之星
日期:2016-01-16 06:20:00程序设计版块每日发帖之星
日期:2016-01-14 06:20:00
7 [报告]
发表于 2006-04-05 22:28 |只看该作者
set /abc/ddd/kkk /abc/ddd/lask/slkdfj/llll

pwd=$1
full_path=$2

echo "pwd=$pwd"
echo "full_path=$full_path"

full_path=(${full_path//\// })
pwd=(${pwd//\// })
for element in $(seq 0 $((${#pwd[@]} - 1)))
do
        if [[ ${pwd[$element]} == ${full_path[$element]} ]];then
                pwd[$element]=""
                full_path[$element]=""
        else
                break
        fi
done

pwd=($(echo ${pwd[@]}))

if [[ -n ${pwd} ]];then
        for element in $(seq 0 $((${#pwd[@]} - 1)))
        do
                pwd[$element]="../"
        done
else
        pwd[0]="./"
fi
ddd=$(echo ${pwd[@]})
kkk=$(echo ${full_path[@]})

new_path=${ddd// /}${kkk// //}
echo $new_path

[ 本帖最后由 yjh777 于 2006-4-10 08:36 编辑 ]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
8 [报告]
发表于 2006-04-06 08:30 |只看该作者
一绝对路径可以对应无限多条相对路径
比如你所在的目录是 /a/b/c/
那么/a/b/的相对路径表示方法就无限了
../
./../
././../
../../b/
../../../a/b/
../c/../
...................

论坛徽章:
84
每日论坛发贴之星
日期:2015-12-29 06:20:00每日论坛发贴之星
日期:2016-01-16 06:20:00每周论坛发贴之星
日期:2016-01-17 22:22:00程序设计版块每日发帖之星
日期:2016-01-20 06:20:00每日论坛发贴之星
日期:2016-01-20 06:20:00程序设计版块每日发帖之星
日期:2016-01-21 06:20:00每日论坛发贴之星
日期:2016-01-21 06:20:00程序设计版块每日发帖之星
日期:2016-01-23 06:20:00程序设计版块每日发帖之星
日期:2016-01-31 06:20:00数据库技术版块每日发帖之星
日期:2016-01-16 06:20:00程序设计版块每日发帖之星
日期:2016-01-16 06:20:00程序设计版块每日发帖之星
日期:2016-01-14 06:20:00
9 [报告]
发表于 2006-04-06 09:31 |只看该作者
原帖由 waker 于 2006-4-6 08:30 发表
一绝对路径可以对应无限多条相对路径
比如你所在的目录是 /a/b/c/
那么/a/b/的相对路径表示方法就无限了
../
./../
././../
../../b/
../../../a/b/
../c/../
...................

最短路经问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP