Linux 如何列出具有非挂起链接的目录中的所有符号链接?
我想获得一个目录中所有符号链接的列表,其中包含有效链接。换句话说,我希望我的列表中所有断开的链接都被丢弃。在shell中,Linux 如何列出具有非挂起链接的目录中的所有符号链接?,linux,bash,symlink,symlink-traversal,Linux,Bash,Symlink,Symlink Traversal,我想获得一个目录中所有符号链接的列表,其中包含有效链接。换句话说,我希望我的列表中所有断开的链接都被丢弃。在shell中,[-L“$f”]&&&[-e“$f”]为真,当且仅当“$f”是目标存在的符号链接的名称时。因此: for f in *; do if [ -L "$f" ] && [ -e "$f" ]; then # do something with "$f" fi done (切勿使用-a或-o选项来测试/[..];它们不能被依赖于具有
[-L“$f”]&&&[-e“$f”]
为真,当且仅当“$f”是目标存在的符号链接的名称时。因此:
for f in *; do
if [ -L "$f" ] && [ -e "$f" ]; then
# do something with "$f"
fi
done
(切勿使用-a
或-o
选项来测试/[
..]
;它们不能被依赖于具有合理的优先级。)在shell中,[-L“$f”]&&&&[-e“$f”]
如果且仅当“$f”是目标存在的符号链接的名称时才为真。因此:
for f in *; do
if [ -L "$f" ] && [ -e "$f" ]; then
# do something with "$f"
fi
done
(切勿使用-a
或-o
选项来测试/[
..]
;不能依赖它们来确定优先级。)最好使用bash或其他脚本语言,最好使用bash或其他脚本语言