加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 如何检查符号链接是否存在

发布时间:2020-12-15 19:05:59 所属栏目:安全 来源:网络整理
导读:我正在尝试检查bash中是否存在符号链接。这是我尝试过的。 mda=/usr/mdaif [ ! -L $mda ]; then echo "= File doesn't exist"fimda='/usr/mda'if [ ! -L $mda ]; then echo "= File doesn't exist"fi 但是,这不起作用。 如果’
我正在尝试检查bash中是否存在符号链接。这是我尝试过的。
mda=/usr/mda
if [ ! -L $mda ]; then
  echo "=> File doesn't exist"
fi


mda='/usr/mda'
if [ ! -L $mda ]; then
  echo "=> File doesn't exist"
fi

但是,这不起作用。
如果’!’被遗漏,它永远不会触发。而如果 ‘!’在那里,它每次都会触发。

如果“文件”存在并且是符号链接(链接文件可能存在或可能不存在),则-L返回true。你想要-f(如果文件存在并且是常规文件则返回true)或者只是-e(如果文件存在而不管类型如何都返回true)。

根据GNU manpage,-h与-L相同,但根据BSD manpage,不应使用:

-h file True if file exists and is a symbolic link. This operator is retained for compatibility with previous versions of this program. Do not rely on its existence; use -L instead.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读