【发布时间】:2017-11-14 18:32:09
【问题描述】:
我编写了一个 shell 脚本来检查是否存在二进制文件:
#!/usr/local/bin/bash
if [ -e "/path/to/a/binary/file/app.bin" ]; then
echo "INFO: application has been built successfully"
else
echo "ERROR: application couldn't be built".
fi
它工作正常并给出了预期的结果。但是,如果有许多具有相似名称的应用程序(例如 app1.bin, app2.bin 等)并且我想测试 "app*.bin",则 if 条件失败:
#!/usr/local/bin/bash
if [ -e "/path/to/a/binary/file/app*.bin" ]; then
echo "INFO: application has been built successfully"
else
echo "ERROR: application couldn't be built".
fi
如何更正 if 条件以搜索以 app 为名称的任何二进制文件的存在,即 app*.bin
【问题讨论】:
-
glob 在引号内不起作用。即使您确实删除了它,如果从 glob 匹配返回多个文件,条件也会失败
-
嗨@Inian,你有什么建议。我应该如何更改代码以解决我的目的。