我跑find
並通過與[ \(-L $F \) ]
結果迭代收集特定的符號鏈接。如何檢測Bash中符號鏈接是否被破壞?
我想知道如果有一個簡單的方法來確定鏈路在這種情況下損壞(指向一個不存在的文件)。
這裏是我的代碼:
for F in $FILES; do
if [ -L $F ]; then
if readlink -q $F >/dev/null ; then
DO THINGS
else
echo "$F: bad link" >/dev/stderr
fi
fi
done
請注意,如果文件不根本不存在的代碼也將執行此行爲。這是罰款'find',但在其他情況下(如水珠)應與-h相結合來處理這種情況下,例如'[-h「$ F」 -a! -e「$ F」]'。 – Calimo
你不是真的用這種方法測試符號鏈接。 –
@Calimo沒有區別。 – Melab