欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

BAT 调用 VBS 通过curl 检查FTP中的文件日期 有大用

VBS调用curl 检查FTP中的文件日期,传入一个日期参数,然后ftp某个目录中的所有文件和这个日期进行比较.返回大于传入日期参数的个数.

 

Set objArgs = WScript.Arguments 

strTmp=now
If objArgs.Count>0  Then
 strTmp= objArgs(0)
End If

If Len(strTmp)=0 or objArgs.Count=0 Then
 strTmp=trim(inputbox("Entry Date","Date",strTmp ))
End If

If Len(strTmp)>0 Then
 strTmp=CDate(left(CDate(strTmp),11))
 
 'msgbox strTmp
 Set objShell = CreateObject("Wscript.Shell")

 SET A = objShell.exec("curl.exe ""ftp://xxxxxxx/"" -X  ""list -al"" -u username:password").stdout
 b = A.readall
 

 tmpLine= split(b,vbcrlf)
 

 iFileCount=0
 for i=0 to UBound(tmpLine)

    '读取文件列表中的每一行
    if Len(tmpLine(i))>0 And instr(tmpLine(i)," <DIR>")<=0 then
         tmpstr=CDate(Trim(left(tmpLine(i),25)))

         '日期比较
         If tmpstr>strTmp Then

          '计数
          iFileCount=iFileCount+1
         End If
         'msgbox tmpstr
    End if
 Next 
 

 '返回计数值
 'MsgBox iFileCount
 WScript.Quit(iFileCount)
 
end if

 

 

下面的bat 调用

 

echo off
ChkFTPFile.vbs %date%

'如果ftp上的文件日期大于当天的文件总数为11
if  ERRORLEVEL 11  run some commad

文章知识点与官方知识档案匹配,可进一步学习相关知识

Linux技能树Linux实用命令cURL和wget命令8721 人正在系统学习中



来自  https://blog.csdn.net/qffhq/article/details/6080455



vbs获取计算机信息,vbs获取系统硬件信息小脚本

工作需要,需要获取win服务器的硬件信息,提交给一api 接口,最后用vbs实现了功能,主要是用到了WMI

发包是调用curl.exe来实现的,代码如下:

REM '获取IP地址'

REM '判断DNS是否为空,判断IP地址开头是否为10或192'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE",,48)

For Each objItem in colItems

If isNULL(objItem.DNSServerSearchOrder) Then

Else

IPX=objItem.IPAddress(0)

LefIP=split(IPX,".")(0)

If LefIP="10" OR LefIP="192" Then

IP=IPX

Wscript.Echo "ip:" & IP

End If

End If

Next

REM '获取SN号'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_BIOS",,48)

For Each objItem in colItems

SN=objItem.SerialNumber

Wscript.Echo "Sn: " & SN

Next

REM '获取CPU信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_Processor",,48)

For Each objItem in colItems

Processor=objItem.Name

Wscript.Echo "Processors: " & Processor

Next

REM '获取内存信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_ComputerSystem",,48)

For Each objItem in colItems

Memory= Round(objItem.TotalPhysicalMemory/1024^3) & "GB"

Wscript.Echo "Memory: " & Memory

Next

REM '获取硬盘信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_DiskDrive",,48)

For Each objItem in colItems

Disk=objItem.Model

Wscript.Echo "Disk: " & Disk

Next

REM '获取电脑品牌'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_BaseBoard",,48)

For Each objItem in colItems

Pinpai=objItem.Manufacturer

Next

REM '获取Summary信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_BaseBoard",,48)

For Each objItem in colItems

Product=objItem.Product

Summary=Pinpai & " " & Product & "," & Processor & "," & Memory

Wscript.Echo "Summary: " & Summary

Next

REM '获取Chipset信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_Processor",,48)

For Each objItem in colItems

Chipset=objItem.Caption

Wscript.Echo "Chipset: " & Chipset

Next

REM '获取系统类型'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_OperatingSystem",,48)

For Each objItem in colItems

OS=objItem.Caption

Wscript.Echo "OS: " & OS

Next

REM '获取BIOS信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_BIOS",,48)

For Each objItem in colItems

If isNull(objItem.BIOSVersion) Then

Wscript.Echo "BIOS: "

Else

BIOS=Join(objItem.BIOSVersion,",")

Wscript.Echo "BIOS: " & BIOS

End If

Next

REM '获取计算机名'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_ComputerSystem",,48)

For Each objItem in colItems

Hostname=objItem.DNSHostName

Wscript.Echo "Hostname:" & Hostname

Next

REM '获取MAC地址'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True",,48)

For Each objItem in colItems

Macaddress=objItem.MACAddress

Wscript.Echo "MACAddress: " & Macaddress

Next

REM '获取Network信息'

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

Set colItems = objWMIService.ExecQuery( _

"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True",,48)

For Each objItem in colItems

Network=Mid(objItem.Caption,InStr(objItem.Caption,"]")+1) & " " & Macaddress

Wscript.Echo "Network: " & Network

Next

REM 'curl发包'

Dim Info

Info="Summary: " & Summary & Chr(13) & "Processors: " & Processor & Chr(13) & "Memory: " & Memory & Chr(13) & "Disk: " & Disk & Chr(13) & "Chipset: " & Chipset & Chr(13) & "Network: " & Network & Chr(13) & "BIOS: " & BIOS

dim curlcmd

dim cmdstr

set curlcmd=Createobject("wscript.shell")

cmdstr = "curl.exe -d ""ip=" & IP & "&sn=" & SN & "&info=" & Info & """ http://ams.nxadmin.com/api/hwinfo"

curlcmd.run cmdstr

最后编辑:2013-11-19作者:admin

这个作者貌似有点懒,什么都没有留下。

来自  http://www.taodudu.cc/news/show-5889873.html?action=onClick


普通分类: