bat文件与Vbs文件之间的常用操作(获取用户输入,执行VBS文件)

bat文件

set /P StrInput="输入数字:"
echo 输入的数字为%StrInput%
set /P Flg="是否执行(y/n):"
IF "%Flg%" equ "y" (
  echo 执行命令
  cscript abc.vbs "%StrInput%"
)

注意:

等于号(=)之间不能有空格,不然会出错。

判断值大小最好使用equ之类。

条件判断后的括号的有空格。

VBS文件

获取外部参数

写文件

WebAPI操作

日期与TimeStamp变换

Dim WshShell
Dim CurDir
Dim oParam

'取参数
Set oParam = WScript.Arguments

if oParam.Count>0 Then

Else
    WScript.Quit
End if

'获取当前路径
Set WshShell = WScript.CreateObject("WScript.Shell")
CurDir = WshShell.CurrentDirectory

'写文件操作
Function OutputData(filename)
    Dim objFSOW
    Dim objFileW

    Set objFSOW = WScript.CreateObject("Scripting.FileSystemObject")
    Set objFileW = objFSOW.OpenTextFile(filename,2,True)

    objFileW.Write(filename)
    objFileW.Write(vbCrLf)
    objFileW.Write(vbTab)

    Set objFileW = Nothing
    Set objFSOW =Nothing

End Function

'WebAPI操作
'params = "{""method"":""get"",""ID"":""12""}"
Function RequestAPI(url,params)
    Dim oHttp

    Set oHttp = CreateObject("MSXML2.ServerXMLHTTP")
    on error resume next

    oHttp.Open "POST",url,False

    If Err Then
        RequestAPI = Err.Description
    End If
    On Error Goto 0

    oHttp.SetRequestHeader "Content-Type","application/json"
    oHttp.Send params

    If oHttp.readyState<>4 Then
       oHttp.waitForResponse(10)
    End If

    RequestAPI = oHttp.ResponseText

    Set oHttp = Nothing

End Function

'TimeStamp -> Date
Function FormatDate(timestamp)
   FormatDate = DateAdd("s",CLng(timestamp),"01/01/1970 00:00:00")
End Function

'Date ->TimeStamp
Function DateToTimeStamp(dateValue)
   DateToTimeStamp = DateDiff("s","01/01/1970 00:00:00",dateValue)
End Function

vbs服务器bat文件,window下批处理操作:bat文件中调用vbs

@echo "kill CRT process"
taskkill /F /IM SecureCRT.exe
::ping 127.0.0.1 -n 30
echo "start vos through CRT"
echo off
d:
cd D:\tools\SecureCRT_x86
start SecureCRT.EXE /SCRIPT D:\Secure_vos\Start_vos.vbs
echo "start vos through CRT end"
ping 127.0.0.1 -n 4
pause

上述代码的意思是:在.bat文件中执行Start_vos.vbs文件

批处理执行文件之前首先需要下载SecureCRT.exe文件

Start_vos.vbs文件内容如下:

On Error Resume Next
Dim result
If crt.Session.Connected Then crt.Session.Disconnect
' connected to the '172.21.1.114'
Set objtab = crt.Session.ConnectInTab("/SSH2 /PASSWORD root root@172.21.1.114",True)
' Capture error code and description (if any)
nError = Err.Number
strErr = Err.Description
' Now, tell the script host that it should handle errors as usual now:
On Error Goto 0
' change tab name
objtab.caption = "Gdb_vos"
' enter the folder
crt.Screen.Send "cd /home/test" & chr(13)
crt.Screen.WaitForString chr(27) & "[32m(none) /home/test" & chr(27) & "[m # "
End Sub

上述代码主要是将手动输入的过程使用VBS脚本进行自动化
首先:Set objtab = crt.Session.ConnectInTab("/SSH2 /PASSWORD root123 root@172.11.1.15",True)
采用SSH2的方式连接linuxIP地址172.21.1.114,密码是root123,用户名是rootobjtab.caption = "Start_vos"
将当前连接页面重命名为Start_voscrt.Screen.Send "cd /home/test" & chr(13)输入cd /home/test并回车
crt.Screen.WaitForString chr(27) & "[32m(none) /home/test" & chr(27) & "[m # "等待页面下一行的内容为chr(27) & "[32m(none) /home/test" & chr(27) & "[m # "

到此这篇关于bat文件与Vbs文件之间的常用操作(获取用户输入,执行VBS文件)的文章就介绍到这了,更多相关bat获取用户输入,执行VBS文件内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • bat文件与Vbs文件之间的常用操作(获取用户输入,执行VBS文件)

    bat文件 set /P StrInput="输入数字:" echo 输入的数字为%StrInput% set /P Flg="是否执行(y/n):" IF "%Flg%" equ "y" ( echo 执行命令 cscript abc.vbs "%StrInput%" ) 注意: 等于号(=)之间不能有空格,不然会出错. 判断值大小最好使用equ之类. 条件判断后的括号的有空格. VBS文件 获取外部参数

  • linux shell字符串内置的常用操作(获取长度、查找、替换)

    之前我们也发过相关的文章.这里呢,推荐大家使用一些内置的函数. 在编写shell程序时,经常会涉及到字符串相关操作.有许多命令语句,如awk,sed都能够做字符串各种操作. 事实上shell内置一系列操作符号,能够达到相似效果,使用内部操作符会省略启动外部程序等时间,因此速度会很的快.如果内置的操作符能够做到的,优先使用内置的. 1 读取字符串值 表达式 含义 ${var} 变量var本来的值 ${var-default} var没声明返回default,但不改变var的值 ${var:-def

  • PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法

    本文主要介绍PyQt界面实现中常用的消息弹出对话框.提供用户输入的输入框.打开文件获取文件/目录路径的文件对话框.学习这三种控件前,先想一下它们使用的主要场景: 1.消息弹出对话框.程序遇到问题需要退出需要弹出错误提示框 .程序执行可能造成的风险需要弹出警告窗口提示用户是否进一步执行等等. 2.用户输入框.比如常见的让用户选择执行的程序分支.yes/no等等. 3.文件对话框.获取本地文件或者文件夹的完整路径甚至是直接打开文件显示文件内容. 本文主要针对这三种控件的主要场景进行介绍. QMess

  • 利用Python如何批量修改数据库执行Sql文件

    前言 由于上篇文章中批量修改了文件,有的时候数据库也需要批量修改一下,之前的做法是使用宝塔的phpMyAdmin导出一个已经修改好了的sql文件,然后依次去其他数据库里导入,效率不说极低,也算低了,且都是些重复性的劳动,所以打算用Python来批量执行sql 环境 版本:Python3.6 系统:MacOS IDE:PyCharm 第三方库:pymysql Show Code import pymysql host = 'xxx.65.9.191' username = 'root' passw

  • vbs 批量修改文件,bat 批处理文件调用执行vbs,并在cmd窗口打印返回值(vbs运行结果)

    示例代码(t.vbs)如下: 复制代码 代码如下: Set fso=Wscript.CreateObject("Scripting.FileSystemObject") flrName="D:\Workspace\src\" 'dir that you need deal with count=0 'get the count of modified files function Traversal(dir) set flr=fso.getfolder(dir) s

  • Git文件常用操作总结及拓展

    目录 1.Git本地版本库结构 2.Git常用操作方法 3.补充:添加多个文件到暂存区 4.补充:提交操作未写备注 5.补充:从工作区直接提交到版本库 1.Git本地版本库结构 如下图所示: 工作区(Working Directory)添加.编辑.修改.删除文件等操作. 暂存区(Stage)打算提交,但还没提交的内容.最后可以统一提交到Git仓库中.也可以不提交,撤销回来. Git仓库(Git Repository)实实在在的项目存储的每个一历史的版本. 2.Git常用操作方法 Git的专属命令

  • 利用wscript执行文件[包括可执行exe文件]vbs脚本

    昨天下载并且安装了Updater Application Block后,需要执行一个Deploy.vbs的文件,鄙人才疏学浅,这个小问题竟然也花费了我不少心机. 现在把结论共享一下. 首先,我的vbs文件关联已经被"豪杰"夺取了.我双击Deploy.vbs就会打开豪杰,比较郁闷.但是我用了打开方式,试了浏览器.cmd,都无济于事. 今天,我想到这个问题后,就有想法去Microsoft的News Group上去问一问.然后又去了CSDN的全文检索.果然很争气,我的关键字只是vbs,执行,

  • VBS怎么获取指定目录下的文件列表

    VBS肿么获取某目录下的文件列表 dim FileName,fs,foldername foldername = InputBox("请输入想要在哪个文件夹查找", "VBS查找文件") If foldername = "" Then wscript.quit End If Set fs = CreateObject("scripting.filesystemobject") digui (foldername)'调用递归函数

  • Python xlrd/xlwt 创建excel文件及常用操作

    一.创建excel代码 备注:封装好了(可直接调用) """ -*- coding:utf-8 -*- @Time :2020/8/20 21:02 @Author :Jarvis @File :jar_excel_util.py @Version:1.0 """ from typing import List import xlwt class JarExcelUtil: def __init__(self, header_list: List

  • windows 批处理bat连接本地mysql 创建制定数据 并执行sql文件

    实例代码 @echo off set path=C:\Program Files\MySQL\MySQL Server 5.7\bin cd ./ set CURR_PATH=%cd% mysql -h localhost -u root --password=123456 < operate.txt mysql -h localhost -u root -p stcounter < stcounter.sql --password=123456 @echo off:关闭回显  不出现在doc

随机推荐