gpt4 book ai didi

shell - 在 solaris shell 中获取 realpath

转载 作者:行者123 更新时间:2023-12-04 05:38:51 32 4
gpt4 key购买 nike

Solaris中是否有可以获取真实路径的实用程序。

cd /home/me/test
realpath .. # got /home/me in linux

我可以在linux中做realpath,但在solaris上似乎缺乏。

最佳答案

function realpath {
[ -d "$1" ] && (
CDPATH= \cd "$1"
/bin/pwd
) || (
CDPATH= \cd "$(dirname "$1")" &&
printf "%s/%s\n" "$(/bin/pwd)" "$(basename $1)"
)
}

一些评论:

虽然函数不是 POSIX,但建议使用它而不是旧的 name() { ... }至少在 ksh 上的语法,这可能是 Solaris 下最常用的 shell。
\cd用于 vs cd防止 cd 之外的其他事情shell 内置被使用,然后避免不必要的副作用。 /bin/pwd用于调用 pwd作为非内置命令,因为它不知道父 shell 如何进入当前目录,因此只能获取它的真实路径。

关于shell - 在 solaris shell 中获取 realpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11553115/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com