在錄製影片時我使用的是WonderShare公司的Filmora,尚稱滿意,在多部電腦裡皆安裝了,但因為安裝的位置不同,且Filmora經常更新版本,更版後安裝資料夾都有帶上版本號(如14.4.3.11809),我又習慣在命令行以批次檔的方式執行,因此必須經常修改批次檔裡的版本號,不勝其擾。今天終於著手修改啟動的執行檔,希望不必再修改了。
原來是想完全在批次檔 fm14.bat 裡判斷並執行,試了一會發現太麻煩了,最終用比較簡單的 VBScript 解決。
1. fm14.bat
- 用Everything search engine的命令行es.exe找到硬碟內的filmora.exe
- 將找到的 es.exe 輸出傳給 fimlora-exec.vbs
▼ fm14.bat
@echo off
for /f "tokens=*" %%i in ('es -w -r "^filmora.exe$"') do set FILMORA=%%i
cscript.exe c:\util\filmora-exec.vbs "%FILMORA%"
2. fimora-exec.vbs
- 解析傳入的 es.exe 資料,找 C: 或 D:,將執行路徑存入filename,最後執行 filename
Dim source, substr, pos, filename ' 參數1: 2025/03/12 10:11 38,008 C:\Users\帳號\AppData\Local\Wondershare\Wondershare Filmora\14.4.5.11834\Filmora.exe source = WScript.Arguments(0) WScript.Echo source substr = "C:" pos = InStr(source, substr) if pos <= 0 Then substr = "D:" pos = InStr(source, substr) End if If pos > 0 Then 'WScript.Echo "Substring [" & substr & "] index:" & pos filename = """" & Mid(source, pos, 128) & """" WScript.Echo "exec " & filename Set objShell = CreateObject("WScript.Shell") objShell.Run filename, 0, True Else WScript.Echo "Cannot find substring '" & substr & "'" End If
##
您可能也會有興趣的類似文章
- RTF另存檔成DOC的VBS程式 (3則留言, 2006/06/01)
- 以系統管理員啟動Windows Terminal的3個方法 (0則留言, 2020/01/24)
- [WSL#8] es.exe+fzf在WSL裡的應用 (0則留言, 2020/03/14)
- es+fzf:超快速找檔神器-用Everything Search的命令行es.exe,整合fzf的模糊搜尋;WSL也能使用! (0則留言, 2020/03/14)
- [PSPad] PSPad的Scripting功能初探 (2則留言, 2006/06/09)
- 打破Windows與UNIX的藩籬:nyagos-介於UNIX跟DOS之間的混血的CommandLine Shell (0則留言, 2024/04/14)
- 切換目錄: 用cd、pushd和Shell命令(初學者的命令行 #4) (0則留言, 2019/04/07)
- 快速切換資料夾的DOS指令:go-tool (0則留言, 2014/04/26)
- 以系統管理員啟動Windows Terminal的簡單方法:使用gsudo.exe (0則留言, 2020/05/20)
- [AHK#32] 讓多個cmd.exe共用命令歷史的變通作法(跨Session共用) (0則留言, 2020/03/28)
- AutoHotkey 熱字串的常用選項與指引功能(AHK #2) (9則留言, 2019/05/17)
- [Vista] 符號連結(Symbolic/Soft Link)、永久連結(Hard Link)與連接點(Junction Point) (2則留言, 2008/04/04)
- [Windows] 部署相同目錄結構檔案的簡便方法 (0則留言, 2005/03/15)
- 在命令提示字元取得目前資料夾路徑的方法—使用set /p|初學者的命令行#10 (0則留言, 2021/04/22)
- DOS命令使用技巧1:最快把文字檔案貼入剪貼簿的方法 (0則留言, 2010/02/27)