我创建了一个非常简单的脚本(见下文),但无法使其正常运行。我总是收到消息说
line 5: syntax error near unexpected token 'fi'
line 5: 'fi'
Run Code Online (Sandbox Code Playgroud)
当我尝试执行此脚本时。
#!/bin/sh
rm /opt/file_name
if $? -ne 0 then
echo 'error'
fi
exit
Run Code Online (Sandbox Code Playgroud)
如果这有什么不同,我会在 Red Hat Linux 上运行它。
如果有人可以帮助确定 if 语句有什么问题,我将不胜感激。
账单
小智 5
您缺少分号(我不确定它是否可以在没有方括号的情况下使用)。
备择方案:
如果 [[ $? -ne 0 ]];然后
或者
如果 !测试 $? = 0; 然后
或者
如果 [$? -ne 0 ];然后
或者
测试 $? = 0 || echo '错误';
甚至更好:
rm /bla/bla || echo '错误';
(最后一个是你的整个脚本)