Fre*_*edo 3 shell-script symlink test
尝试创建一个if语句来检查文件是否是有效的符号链接(意味着它也存在)。
我试过:
[ -h "$1" -a ! -e "$1" ]
Run Code Online (Sandbox Code Playgroud)
...但这不起作用。如果文件不是有效的符号链接,或者根本不存在,我想执行代码。
如果中的名称$1是有效的符号链接,则-e测试为真。如果它是损坏的符号链接,则-e测试将失败。$1如果 in 中的名称根本不存在,则测试也会失败。
因此,要测试$1符号链接是否损坏,或者根本不存在,使用就足够了
if [ ! -e "$1" ]; then ...; fi
Run Code Online (Sandbox Code Playgroud)
您的测试最好不使用已弃用的 -a内容来编写
if [ ! -e "$1" ] && [ -h "$1" ]; then ...; fi
Run Code Online (Sandbox Code Playgroud)
这测试$1现有的符号链接是否已损坏。
您想测试有效的符号链接吗,请使用
if [ -e "$1" ] && [ -h "$1" ]; then ...; fi
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5782 次 |
| 最近记录: |