如何在bash中获取给定路径的根目录? [英] How-To get root directory of given path in bash?

查看:95
本文介绍了如何在bash中获取给定路径的根目录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的脚本:

    #!/usr/bin/env bash
    PATH=/home/user/example/foo/bar
    mkdir -p /tmp/backup$PATH

现在我想获取"$ PATH"的第一个文件夹:/home/

And now I want to get first folder of "$PATH": /home/

    cd /tmp/backup
    rm -rf ./home/
    cd - > /dev/null

如何始终像上面的示例一样检测第一个文件夹? "dirname $ PATH"仅返回"/home/user/example/foo/".

How can I always detect the first folder like the example above? "dirname $PATH" just returns "/home/user/example/foo/".

提前谢谢! :)

推荐答案

我找到了一个解决方案:

I've found a solution:

    #/usr/bin/env bash
    DIRECTORY="/home/user/example/foo/bar"
    BASE_DIRECTORY=$(echo "$DIRECTORY" | cut -d "/" -f2)
    echo "#$BASE_DIRECTORY#";

这总是返回第一个目录.在此示例中,它将返回以下内容:

This returns always the first directory. In this example it would return following:

    #home#

感谢@condorwasabi与awk的想法! :)

Thanks to @condorwasabi for his idea with awk! :)

这篇关于如何在bash中获取给定路径的根目录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆