亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > BAT > 正文

讓批處理被wsh解析的代碼

2020-03-29 20:16:22
字體:
來源:轉載
供稿:網友
示例批處理:test.bat 
復制代碼 代碼如下:

:On Error Resume Next  
Sub bat  
echo off & cls  
echo Batching_codez_here_following_vbs_rules & pause  
start wscript -e:vbs "%~f0"  
Exit Sub  
End Sub  
MsgBox "This is vbs" 
 
上面的代碼巧妙利用 bat 和 vbs 的語法特征,讓同一個文件,被 cmd.exe 識別成批處理,讓 wscrpt.exe 識別成 vbs,并且同時符合兩者的語法,并且保證都沒有錯誤,保證兩者的高度兼容。就叫它 bat/vbs 復合編程吧 (Hybird Programming)
粗略解釋下代碼
引用: 
:On Error Resume Next 
cmd.exe 識別成一段注釋
wscript.exe 這樣識別, : 在vbs語法里代表分行,然后 On Error Resume Next,也就是讓WSH忽略一些錯誤
引用: 
start wscript -e:vbs "%~f0"
cmd.exe 識別成:啟動 wscript.exe ,其參數是: 
① -e:vbs 設定以vbs解析文件自身
② "%~f0" 指這個批處理本身。
wscript.exe 把這句識別成:調用一個叫 start 的函數,函數參數是 wscript 這個變量,然后用這個函數的結果來 減去 e。接下來是又是一個 : ,分行,然后又是調用一個名叫 vbs 的函數,參數是字符: "%~f0"
這句是最為精巧的,因為它成功的讓 vbs 引擎解釋了一段批處理,而且沒有錯誤!當然這些 start()、vbs()函數是不存在的,但是會被 cmd.exe 當成命令執行。為什么不用 wscript //e:vbs "%~f0" 來執行呢?vbs解析會出錯的,呵呵

這段代碼的核心思想已經介紹完畢了。下面,為了讓 批處理 以vbs調用其自身后,馬上退出,我們需要 exit 或者 goto :eof,但是 goto call exit 在vbs又是一個關鍵詞,所以我們只能用符合 vbs 語法的 exit sub,所以我們在第二句加一個
sub bat,其實 cmd.exe 尋找了一個叫 sub.exe 的命令,但是這個命令是不存在的,cmd.exe 跳過。然后在 6、7 句加一個 exit sub 以及 end sub,讓 批處理結束,同時又符合 vbs 的語法

那個 echo off & cls ,批處理的意思就是相當于 @echo off ,但是 vbs 不認 @ 符號,所以改成 echo off & cls , vbs 可以解析為,調用一個叫 echo() 的函數,參數為 off & cls ,也就是兩個字符串 off 和 cls 相加 

Well,接下來,你可以自由地在批處理中書寫vbs腳本了,效率和真正的vbs一樣高!

這段代碼的好處是:不用生成臨時文件。其實用 echo 或者 more 或者 find 來生成臨時vbs很浪費系統資源的,用我寫的這段代碼,就完全免去了這些麻煩。直接混合編程,以 start wscript -e:vbs "%~f0" 為界限,上面寫 批處理,下面寫 vbs,并行不悖!
大家有更好的想法可以跟貼討論呀
allyesno :%~fI - 將 %I 擴充到一個完全合格的路徑名
另外如果用到shell中的話 寫vbs也要用到echo的 在這種情況沒有省系統資源的說法 除非 copy con 就可以寫 那就直接寫任意腳本文件就行了
其他的情況是有的
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品福利片| 日韩精品极品毛片系列视频| 麻豆国产va免费精品高清在线| 亚洲人成网站免费播放| 97香蕉久久夜色精品国产| 日韩一级裸体免费视频| 欧洲精品毛片网站| 欧美国产日韩一区二区在线观看| 亚洲精品中文字幕av| 国产一区二区欧美日韩| 伊人精品在线观看| 国产精品入口日韩视频大尺度| 亚洲性生活视频在线观看| www.日韩视频| 国产主播精品在线| 亚洲人成电影网| 奇米成人av国产一区二区三区| 欧美亚洲成人网| 欧美人在线观看| 国产亚洲日本欧美韩国| 亚洲激情视频网| 色系列之999| 亚洲精品v天堂中文字幕| 日韩综合视频在线观看| 国产精品欧美日韩久久| 久久影院资源网| 成人444kkkk在线观看| 日韩有码在线观看| 日韩一区二区三区在线播放| 国产精品久久久久久网站| 欧美疯狂性受xxxxx另类| 97国产精品视频人人做人人爱| 欧美精品xxx| 日本一本a高清免费不卡| 久久夜精品香蕉| 亚洲人成电影在线| 国产精品嫩草影院一区二区| 亚洲成人久久电影| 日韩一中文字幕| 在线精品国产成人综合| 96pao国产成视频永久免费| 亚洲一区二区久久久久久久| 国产一区二区三区在线免费观看| 超碰日本道色综合久久综合| 欧美黄色成人网| 久久久精品久久久久| 欧美激情视频三区| 欧美巨大黑人极品精男| 日韩三级成人av网| 亚洲精品美女久久久久| 久久成人精品一区二区三区| 一区二区三区无码高清视频| 欧美性猛交xxxx免费看| 日韩在线播放视频| 亚洲欧美另类人妖| 欧美国产中文字幕| 成人国产精品久久久久久亚洲| 精品国产成人av| 91干在线观看| 国产v综合ⅴ日韩v欧美大片| 97超碰蝌蚪网人人做人人爽| 欧美裸体视频网站| 国产精品自拍偷拍视频| 欧美日在线观看| 日本伊人精品一区二区三区介绍| 国产亚洲精品va在线观看| 国产精品久久久久久久久免费| 久久久伊人日本| 亚洲午夜小视频| 伊人伊成久久人综合网站| 欧美日韩成人在线观看| 精品视频偷偷看在线观看| 国产成人鲁鲁免费视频a| 中文字幕亚洲一区在线观看| 91精品国产综合久久香蕉| 日韩欧美在线视频观看| 久久久久久久999精品视频| 国产精品盗摄久久久| 韩剧1988免费观看全集| 国产亚洲福利一区| 国产999精品视频| 亚洲丝袜一区在线| 亚洲日本欧美中文幕| 最新国产精品拍自在线播放| 欧美视频免费在线观看| 亚洲国产古装精品网站| 在线视频免费一区二区| 欧美日韩精品在线观看| 亚洲аv电影天堂网| 97成人精品区在线播放| 日韩精品在线电影| 亚洲精品美女在线观看| 国产黑人绿帽在线第一区| 亚洲第一级黄色片| 国产一区二区视频在线观看| 国产三级精品网站| 国产日韩在线亚洲字幕中文| 久久久精品999| 午夜精品蜜臀一区二区三区免费| 国产精品成av人在线视午夜片| 国产精品视频一区二区高潮| 久久影视电视剧免费网站清宫辞电视| 国产+成+人+亚洲欧洲| 日韩av电影在线播放| 欧美美女操人视频| 久久久国产一区二区三区| 国产精品色视频| 亚洲国产美女久久久久| 黄色一区二区在线观看| 欧美日韩亚洲天堂| 久久伊人精品一区二区三区| 久久天天躁狠狠躁老女人| 国产v综合ⅴ日韩v欧美大片| 国产精品美女免费| 亚洲另类激情图| 日韩欧美福利视频| 欧美激情精品久久久久久大尺度| 亚洲一区二区三区久久| 国产精品电影久久久久电影网| 亚洲电影免费观看| 亚洲激情 国产| 91国自产精品中文字幕亚洲| 92版电视剧仙鹤神针在线观看| 中文字幕亚洲二区| 欧美性精品220| 欧美整片在线观看| 91国产在线精品| 欧美日韩一区二区在线播放| 国产一区二区三区在线观看视频| 北条麻妃在线一区二区| 国产成人午夜视频网址| 麻豆一区二区在线观看| 最近2019中文字幕大全第二页| 欧美午夜www高清视频| 在线观看欧美日韩国产| 亚洲天堂开心观看| 性色av一区二区三区免费| 2020国产精品视频| 国产精品9999| 久久伊人91精品综合网站| 久久精品成人一区二区三区| 色妞在线综合亚洲欧美| 亚洲一区二区三区视频播放| 丝袜美腿精品国产二区| 日韩国产欧美精品在线| 欧美日韩另类字幕中文| 欧美电影免费观看电视剧大全| 日本道色综合久久影院| 最近2019中文免费高清视频观看www99| 搡老女人一区二区三区视频tv| 亚洲xxx大片| 成人黄色免费在线观看| 萌白酱国产一区二区| 在线观看国产精品日韩av| 国产日韩欧美另类| 久久成年人视频| 欧美日韩中文在线观看| 色综久久综合桃花网| 亚洲色图17p| 国产91网红主播在线观看| www国产精品com| 成人日韩在线电影| 国产91在线播放九色快色| 亚洲美女av在线播放|