Método de arquivo em lotes CMD
Crie este arquivo em lote e coloque-o dentro do diretório C:\abc
: C:\xyz
001\C:\xyz
001\C:\xyz
023\%CD%
023\
SET newpath=%cd:\abc\=\xyz\%
start %newpath%
Se você executar esse arquivo em lote, ele abrirá %cd:\abc\=\xyz\%
em uma nova janela. O mesmo arquivo de lote colocado em \abc\
abrirá \xyz\
etc.
%cd%
é uma variável de ambiente que representa o diretório atual. %code% substitui %code% por %code% na string que representa %code% . Consulte a página da SS64 sobre substituição de variável cmd para obter mais detalhes.
Método VBScript
A seguinte é a mesma solução usando o VBScript:
Set objShell = CreateObject("Wscript.Shell")
strPath = Wscript.ScriptFullName
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(strPath)
strFolder = objFSO.GetParentFolderName(objFile)
strRelFolder = Replace(strFolder, "\abc\", "\xyz\")
strPath = "explorer.exe /e," & strRelFolder
objShell.Run strPath