使用简单的VBScript检查文件是否存在,如果不存在则复制
首先,我根本不是一个程序员,所以我可能遗漏了一些非常基本的东西 我正在编写一个脚本,当我们的用户登录到我们的一些终端服务器时,它将通过GPO运行,以检查用户主文件夹中是否存在特定文件,如果存在,则应退出,如果不存在,则应从另一个位置复制.ini文件。这是我的脚本,它失败了使用简单的VBScript检查文件是否存在,如果不存在则复制,vbscript,Vbscript,首先,我根本不是一个程序员,所以我可能遗漏了一些非常基本的东西 我正在编写一个脚本,当我们的用户登录到我们的一些终端服务器时,它将通过GPO运行,以检查用户主文件夹中是否存在特定文件,如果存在,则应退出,如果不存在,则应从另一个位置复制.ini文件。这是我的脚本,它失败了 On Error Resume Next dim shell set shell=createobject("wscript.shell") Set objFSO = CreateObject("Scripting.Fi
On Error Resume Next
dim shell
set shell=createobject("wscript.shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists("C:\%USERPROFILE%\AppData\Roaming\Microsoft Dynamics SL\solomon.ini") Then
Wscript.Quit
Else
objFSO.CopyFile "\\Server\sharepath\file.ini" , "C:\%USERPROFILE%\AppData\Roaming\Microsoft Dynamics SL\"
Wscript.Echo "File Copied."
End If
当我运行脚本时,它只显示复制的文件回显,如果文件不存在,则不会复制任何文件,如果文件存在,则仍会勾选它并显示复制的文件文本
编辑:尝试清理论坛上的显示方式。尝试以下操作:
On Error Resume Next
Dim strAppDataPath
strAppDataPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%appdata%")
With CreateObject("Scripting.FileSystemObject")
If .FileExists(strAppDataPath & "\Microsoft Dynamics SL\solomon.ini") Then
Wscript.Quit
Else
.CopyFile "\\Server\sharepath\file.ini", strAppDataPath & "\Microsoft Dynamics SL\"
Wscript.Echo "File Copied."
End If
End With
不能在VB字符串中使用系统环境变量。
按照Omegalipes的指定预先展开它们,并使用concatenate操作符将它们附加到您的路径。完成了,谢谢大家!我知道这将是一件简单的事情,我知道我想做什么,我只是没有足够的脚本来了解它们是如何工作的。