我想执行 find 命令,但我希望它返回目标而不是符号链接(symbolic link)本身。
在 HP-UX 中可以这样做吗?
例如,使用:
安全 ->/dev/vg_irp_ist/rlv_IRP1_security
我想返回 /dev/vg_irp_ist/rlv_IRP1_security
而不是 security
。
最佳答案
#!/bin/ksh
name=$(find /path/to/dir -type l -name whatever -exec ls -l {} \; |awk -F '>' '{print $2}')
HPUX 没有 readlink 命令。如果您安装了 GNU coreutils,则使用 readlink。否则你就会陷入上述困境。
这是 backwrds 版本 - 给定实际文件名,请通过链接查找它。注意链接中的相对路径:即 ../../foo/filename
export filename="xz.exe"
find . -type l -exec ls -l {} \; |
awk '{print $(NF)}') | grep -q "$filename" && echo $val
关于unix - 如何使find返回hpux中符号链接(symbolic link)的目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15635572/