bat 傳遞參數(shù)調(diào)用問題解決記錄
bat 傳遞參數(shù)
調(diào)用bat時,傳遞參數(shù)有個小問題,記錄一下。
1.問題描述:
傳遞參數(shù)時,接收的值不對。傳遞了“1,2,3”,接收時,只剩下1。后面的沒有了。
解決:
原因是bat取參時,語法弄錯了。
Syntax 1:
%0 代表bat文件名
%1 代表第一個參數(shù)
%2 代表第二個參數(shù)
%2 代表第二個參數(shù)
example 1:
> type args_handle.bat @echo arg1 : %1 @echo arg2 : %2 > args_handle.bat "aaa=bbb,ccc" "ddd;eee" arg1 : "aaa=bbb,ccc" arg2 : "ddd;eee"
Syntax 2:
%~1 第一個參數(shù),除去雙引號
%~2 第二個參數(shù),除去雙引號
example 2:
> type args_handle.bat @echo arg1 : %~1 @echo arg2 : %~2 > args_handle.bat "aaa=bbb,ccc" "ddd=eee" arg1 : aaa=bbb,ccc arg2 : ddd=eee
Syntax 3:
%* 代表所有參數(shù)
2.問題描述:
昨天調(diào)試程序時,又有新的bug。數(shù)據(jù)庫SQL Server中trigger傳遞200個參數(shù)給bat,trigger方面打log確認(rèn),確實(shí)傳遞了200個參數(shù)(參數(shù)格式 1,2,3,4,5,6...),但是bat方法接收時,打log確認(rèn),卻只接收到第87個characoter,后面的全被cut掉了,不知道原因。
解決:
方法調(diào)查中→解決完畢
追記:
場景描述:
trigger中,將200個參數(shù)作為一個字符串傳遞個bat。
問題原因:字符串的聲明錯誤。作為參數(shù)傳遞的變量,被人寫成了sysname,而不是用varchar 聲明的。systemname是個SqlServer內(nèi)置的數(shù)據(jù)類型,長度為128個字符。
參考資料: http://capm-network.com/?
以上就是bat 傳遞參數(shù)調(diào)用問題解決記錄的詳細(xì)內(nèi)容,更多關(guān)于bat 傳遞參數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
實(shí)現(xiàn)Win7系統(tǒng)快速一鍵切換用戶的bat腳本
這篇文章主要介紹了實(shí)現(xiàn)Win7系統(tǒng)快速一鍵切換用戶的bat腳本,簡單的一個批處理一鍵切換系統(tǒng)用戶的功能,需要的朋友可以參考下2014-06-06計(jì)算機(jī)名DNS網(wǎng)關(guān)IP(大家可以用來學(xué)習(xí))
生成自動配置計(jì)算機(jī)名,DNS,網(wǎng)關(guān),IP腳本,IPX內(nèi)部網(wǎng)絡(luò)號2009-05-05黑客基礎(chǔ)之DOS (最齊全)超強(qiáng)推薦
黑客基礎(chǔ)之DOS (最齊全)超強(qiáng)推薦...2006-12-12