如何确定linux符号链接是指向目录还是​​文件

时间:2014-05-08 12:23:56

标签: linux symlink-traversal

我有一个带有符号链接的目录 - 其中一些指向文件,其中一些指向目录 - 如何识别在shell脚本中存在于目录中的那些(不会影响名称偏离)

1 个答案:

答案 0 :(得分:1)

使用ls -L选项来关注符号链接

这是我用来区分目录和文件/空目录内容的脚本 (这只有在目录有一些内容时才有效 - 在我的情况下,我对那些有一些内容的目录感兴趣,所以我很高兴 - 但如果有的话,建议更好的选择

cd dir
for i in `ls `
do
      if [ 1 -lt   `ls -l -L $i  | wc -l`  ]
      then
              echo "$i is a non empty directory" 
      else
              echo "$i is either an empty directory or a  file"
      fi
done