我正在尝试在linux下编写一个shell脚本,它列出了所有具有特定名称的文件夹(递归)和指向它的 no 符号链接。
例如,我有:
/home/htdocs/cust1/typo3_src-4.2.11
/home/htdocs/cust2/typo3_src-4.2.12
/home/htdocs/cust3/typo3_src-4.2.12
现在我想浏览/ home / htdocs的所有子目录,找到那些从某处找不到的文件夹typo3_ *。
应该可以使用shellcript或命令,但我不知道如何。
谢谢你的帮助
的Stefan
答案 0 :(得分:1)
我认为如果在文件节点中存在指向此文件的符号链接,则不会存储任何常见文件系统,因此您必须扫描所有其他文件以查看它是否是此文件的符号链接。如果您不将搜索深度限制在某个级别,则可能需要非常长时间。例如,如果您想在/home/htdocs
中执行该搜索,则可能会执行以下操作:
# find specified folders:
find /home/htdocs -name 'typo3_*' -type d | while read folder; do
# list all symlinks pointing to $folder
find -L /home/htdocs -samefile "$folder"|grep -v "$folder\$"
done