脚本判断文件是否存在
Ⅰ wincc中用vbs写脚本If Dir("C:\"&filename&".xls")=""Then 不管有无文件if都成立
在WinCC中使用VBS编写脚本时,遇到了一个问题,即使用If Dir("C:\" & filename & ".xls") = "" Then判断文件是否存在时,即使文件存在,if条件依然为真。这表明脚本中的逻辑可能存在问题。进一步检查代码发现,脚本中的field.setAccessible(true)和field.get(obj)用于访问和获取对象的字段值,而toBeQueue.add(fieldValue)用于将获取到的值添加到队列中。代码逻辑是遍历对象的所有超类,检查每个字段的值,并将非空字段值添加到队列。而tmpObjClass = tmpObjClass.getSuperclass()则是获取当前类的父类,以便继续检查父类的字段。
经过分析,Dir函数在VBS中的行为可能与预期不符。在VBS中,Dir函数用于返回文件或目录的名称,如果文件不存在,则返回空字符串。然而,在WinCC的VBS环境中,Dir函数可能因环境配置或其他原因返回非空字符串。因此,即使文件存在,if条件也可能为真。
为了解决这个问题,可以尝试以下方法。首先,确保文件路径正确无误。检查filename变量的值,确保其包含正确的文件名。其次,可以使用FileExists函数来替代Dir函数,以提高判断文件存在的准确性。例如:
If Not FileExists("C:\" & filename & ".xls") Then
此外,还可以添加日志记录功能,以便在脚本运行时记录文件是否存在的情况。这有助于进一步分析问题所在。最后,考虑使用其他方法,如检查文件属性或尝试打开文件,以验证文件是否存在。
通过这些方法,可以更准确地判断文件是否存在,从而解决If Dir("C:\" & filename & ".xls") = "" Then条件始终为真的问题。
需要注意的是,确保在开发过程中充分测试代码,以验证修改后的逻辑是否符合预期。同时,也要考虑代码的可维护性和扩展性,以便在未来遇到类似问题时能够快速定位并解决。
Ⅱ Shell脚本中判断文件,目录是否存在或者具有
#!/bin/sh
NovaPath=”/var/log/httpd/”
NovaFile=”/var /log/httpd/access.log”
#这里的-x 参数判断$NovaPath是否存在并且是否具有可执行权限
if [ ! -x "$NovaPath"]; then
mkdir “$NovaPath”
fi
#这里的-d 参数判断$NovaPath是否存在
if [ ! -d "$NovaPath"]; then
mkdir “$NovaPath”
fi
#这里的-f参数判断$NovaFile是否存在
if [ ! -f "$NovaFile" ]; then
touch “$NovaFile”
fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$NovaVar" ]; then
echo “$NovaVar is empty”
exit 0
fi
#两个变量判断是否相等
if [ "$var1" = "$var2" ]; then
echo ‘$var1 eq $var2′
else
echo ‘$var1 not eq $var2′
fi
Ⅲ 按键精灵判断一个文件夹是否存在怎么写
命令名称:
判断文件夹是否存在
命令功能:
判断文件夹是否存在
命令参数:
参数1 字符串型,文件夹路径
返回值:
布尔型,文件夹是否存在。True(是),False(否)
脚本例子:
按键精灵8及
以上语法
Msgbox lib.文件.判断文件夹是否存在("c:\WINDOWS")
Ⅳ shell判断文件夹是否存在
在Shell中,可以使用test命令或者其简写形式[来判断文件夹是否存在。具体方法如下:
使用test命令判断文件夹是否存在:
- 语法:test d 文件夹路径
- 如果文件夹存在,则命令返回状态码0,否则返回非0状态码。
使用[判断文件夹是否存在:
- 语法:[ d 文件夹路径 ]
- 注意,[和]之间需要有空格,文件夹路径前后也需要有空格。
- 同样地,如果文件夹存在,则返回状态码0,否则返回非0状态码。
结合条件判断语句使用:
- 示例代码:bashDIR="/path/to/directory"if [ d "$DIR" ]; then echo "文件夹存在"else echo "文件夹不存在"fi 在这个示例中,如果/path/to/directory这个文件夹存在,则会输出“文件夹存在”,否则输出“文件夹不存在”。注意事项: 在使用路径时,建议使用绝对路径或者相对于脚本执行目录的相对路径,以避免路径错误导致的判断失误。 Shell脚本对大小写敏感,因此在使用命令和选项时需要确保大小写正确。