如何删除 Bash 中的半重复目录?
How to remove semi-duplicate directories in Bash?
如何删除可能半重复的文件夹?
例如,每个 folderName
可以有两个版本 A
和 B
。 A
、B
或 A
和 B
:
B_folderName1
A_folderName2
A_folderName3
B_folderName3
我想选择首选版本 A
并删除 B
,或者如果 A
不可用则只保留 B
。以下示例上面的预期输出是:
B_folderName1
A_folderName2
A_folderName3
谢谢!
遍历 B_*
,并删除每个存在相应 A_*
的那些。
for d in B_*/; do
if [[ -e A_${d#B_} ]]; then
echo rm -r "$d"
fi
done
如果输出看起来不错,请删除 echo
。
如何删除可能半重复的文件夹?
例如,每个 folderName
可以有两个版本 A
和 B
。 A
、B
或 A
和 B
:
B_folderName1
A_folderName2
A_folderName3
B_folderName3
我想选择首选版本 A
并删除 B
,或者如果 A
不可用则只保留 B
。以下示例上面的预期输出是:
B_folderName1
A_folderName2
A_folderName3
谢谢!
遍历 B_*
,并删除每个存在相应 A_*
的那些。
for d in B_*/; do
if [[ -e A_${d#B_} ]]; then
echo rm -r "$d"
fi
done
如果输出看起来不错,请删除 echo
。