我想看看,如果符号链接(symbolic link)指向特定目录中的目录 - 递归地。 当然,我可以使用
find / -type l -ls 2>/dev/null |grep /targetpath
但我不想键入所有(递归)路径。
所以我将我系统上的所有符号链接(symbolic link)一次放入一个文件中。
find / -type l -ls 2>/dev/null >~/symlinks.txt
然后我递归地列出目录。
find /targetpath to start/ -maxdepth 2 -type d
这就是我的问题: 我可以将这些路径从最后一个命令传递给 grep 吗? Grep 应该查看我的文件 symlinks.txt 并显示匹配行的内容(可能是指向此目录的更多符号链接(symbolic link))
我试过类似的东西
find /targetpath to stat/ -maxdepth 2 -type d | xargs -0 -ifoo grep foo symlinks.txt
但它并没有像我期望的那样。
或者其他更好的解决方案?
最佳答案
来自 man find :
-lname pattern
File is a symbolic link whose contents match shell pattern pattern. [...]
尝试:
find / -lname '*/targetpath/*'
参见 find-all-symlinks-to-a-directory-and-change-target-to-another-directory .
关于linux - 查看目录 rec 是否在 Linux 中用作符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50815228/