【问题标题】:windows shell - how to detect the current location where script file is placed?windows shell - 如何检测脚本文件的当前位置?
【发布时间】:2010-02-22 10:26:45
【问题描述】:

我正在尝试将 Windows shell 文件插入到将分析文件夹内容的文件夹中。

现在我想知道如何检测当前路径?即使用 FileSystemObject 放置 vbs 文件的位置?

设置 objFSO = CreateObject("Scripting.FileSystemObject")

【问题讨论】:

    标签: windows vbscript windows-shell


    【解决方案1】:
    Set objFS = CreateObject("Scripting.FileSystemObject")
    WScript.Echo objFS.GetParentFolderName(WScript.ScriptFullName)
    

    【讨论】:

      【解决方案2】:

      您可以从WScript.ScriptFullName 获得。只需从末尾删除文件名(最后一个反斜杠之后的位)。我通常将 JScript 用于脚本,但 IIRC VBScript 有一个 InStrRev 函数,可以帮助您找到最后一个反斜杠。或者:为WScript.ScriptFullName 路径创建一个File 对象,然后使用其ParentFolder 属性。类似(未经测试):

      Dim objFSO
      Dim objFile
      Dim objFolder
      
      Set objFSO = CreateObject("Scripting.FileSystemObject")
      Set objFile = objFSO.GetFile(WScript.ScriptFullName)
      Set objFolder = objFile.ParentFolder
      

      【讨论】:

        【解决方案3】:

        为了只获取完整路径而不使用扩展名,我使用Replace(WScript.ScriptFullName, WScript.ScriptName, "") 来生成文件路径

        【讨论】:

          猜你喜欢
          • 2010-12-21
          • 2010-10-10
          • 1970-01-01
          • 1970-01-01
          • 2020-10-20
          • 1970-01-01
          • 2011-02-21
          • 1970-01-01
          • 2019-01-13
          相关资源
          最近更新 更多