bash:通过跟踪符号链接测试mtime之后,我需要删除符号链接本身,而不是目标文件

bash:通过跟踪符号链接测试mtime之后,我需要删除符号链接本身,而不是目标文件,bash,find,symlink,Bash,Find,Symlink,现在,我有一个脚本,它可以创建指向公共文件夹中任何超过2周的内容的符号链接到另一个文件夹中。但是,我找不到任何好的方法来单独清除过时的符号链接,而不是清除所有内容。我需要测试符号链接目标mtime,如果它超过2周,请删除符号链接本身,而不是链接文件 #!/bin/bash source="/media/public/" dest="/pool/new/" if [[ ! -d $dest ]]; then exit 1 fi if [ `hostname` == "punk" ]

现在,我有一个脚本,它可以创建指向公共文件夹中任何超过2周的内容的符号链接到另一个文件夹中。但是,我找不到任何好的方法来单独清除过时的符号链接,而不是清除所有内容。我需要测试符号链接目标mtime,如果它超过2周,请删除符号链接本身,而不是链接文件

#!/bin/bash

source="/media/public/"
dest="/pool/new/"

if [[ ! -d $dest ]]; then
    exit 1
fi

if [ `hostname` == "punk" ] && [ `uname -o` == "GNU/Linux" ]; then
    #rm -f $dest/*
    find -L $dest -mtime 14 -type f -exec echo "delete symlink: " {} \;
    find -L $source -mtime -14 -type f -exec ln -s -t $dest {} \;
fi
现在,第一个find命令将删除目标,而不是符号链接。

只需使用

-exec rm {} +
rm
将删除链接本身,而不是目标