归档链接到特定目录中任何文件的所有文件[重复]

问题描述 投票:0回答:1

我需要在mac / linux上执行此操作:

  • 给定:某些目录,例如/ usr / local / lib / node_modules
  • 查找:所有链接是指向给定目录中任何文件的符号链接

我想删除这些链接,因为该目录不再存在,并提供更清洁的工作环境。

bash shell find posix symlink
1个回答
0
投票

你可以用这个问题的答案来做到这一点:

Linux: Find all symlinks of a given 'original' file? (reverse 'readlink')

基本的想法是,你在每个目录上做一个ls -al,并在内容中查看它是否包含目录作为链接的目标(而不是像以前的答案那样的文件)。只需将/usr/share/applications替换为您的目录,.*就会匹配所有文件或子文件夹。 \->确保它匹配链接目标而不是普通文件名。

例:

pax$ find / -exec ls -ald {} ';' 2>/dev/null | grep '\-> /usr/share/applications.*' lrwxrwxrwx 1 pax pax 23 2010-06-12 14:56 /home/pax/applications_usr_share -> /usr/share/applications

© www.soinside.com 2019 - 2024. All rights reserved.