找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19449|回复: 3

[问题求助] 【已解决】VBS的wscript对象关于stdin stdout stderr的应用例子

[复制链接]
发表于 2015-4-25 18:06:54 | 显示全部楼层 |阅读模式
本帖最后由 c755731262 于 2015-4-26 09:49 编辑

关于wscript对象关于stdin stdout stderr的应用例子

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-4-25 21:00:11 | 显示全部楼层
方法:Wscript.StdIn.ReadAll()
从光标位置读取全部的输入数据,并移动光标到文末

语法:
Wscript.StdIn.ReadAll()

--------------------------------------------------------------------------------

示例:
(假定示例文件保存为C:\1.vbs)
  1. Dim S

  2. S = Wscript.StdIn.ReadAll()

  3. Wscript.Echo S
复制代码
运行cmd.exe
执行命令行cscript /nologo C:\1.vbs

这时程序等待用户输入

输入123,再按Ctrl+Z,再按回车键
(这时程序仍然等待用户输入)
按Ctrl+Z,再按回车键
输出123

说明Ctrl+Z在行首表示输入结束,否则表示Unicode字符
注意第一行的第一个字符不能是Ctrl+Z

--------------------------------------------------------------------------------

可以从文件导入字符,不能是0字节的空文件
  1. Dim S

  2. S = Wscript.StdIn.ReadAll()
  3. Wscript.Echo S
  4. Wscript.Echo
  5. Wscript.Echo "光标位置,行:" & Wscript.StdIn.Line
  6. Wscript.Echo "光标位置,列:" & Wscript.StdIn.Column
  7. Wscript.Echo
  8. Wscript.Echo "是否在行末:" & Wscript.StdIn.AtEndOfLine
  9. Wscript.Echo "是否在文末:" & Wscript.StdIn.AtEndOfStream
复制代码
运行cmd.exe
执行命令行cscript /nologo C:\1.vbs < C:\boot.ini

输出
[boot loader]
timeout=0
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"
/fastdetect /usepmtimer
C:\mxldr=一键备份还原 MaxDOS 8

光标位置,行:6
光标位置,列:25

是否在行末:True
是否在文末:True
(C:\boot.ini的文件内容不同,输出结果也不相同)

评分

参与人数 1技术 +1 收起 理由
c755731262 + 1 非常感谢

查看全部评分

发表于 2015-4-25 21:01:34 | 显示全部楼层
本帖最后由 czjt1234 于 2015-4-25 21:04 编辑

方法:Wscript.StdOut.Write()从光标位置写入数据


语法:Wscript.StdOut.Write(string)


参数:string
要写入的内容。类型:String


示例:

(假定示例文件保存为C:\1.vbs)

  1. Wscript.StdOut.Write  "QQ" & vbCrLf & "20147578"

  2. Wscript.Echo "光标位置,行:" & Wscript.StdOut.Line
  3. Wscript.Echo "光标位置,列:" & Wscript.StdOut.Column

  4. Wscript.StdOut.Write "1234567"
复制代码


运行cmd.exe
执行命令行cscript /nologo C:\1.vbs


输出为:QQ20147578
光标位置,行:2
光标位置,列:9
1234567

评分

参与人数 1技术 +1 收起 理由
c755731262 + 1 非常感谢

查看全部评分

发表于 2015-4-25 21:07:18 | 显示全部楼层
属性:Wscript.StdIn
只读属性。用于Cscript.exe命令行环境输入信息。类型:TextStream对象

Set TextStream = Wscript.StdIn

标准的TextStream对象有4个属性9个方法

Wscript.StdIn对象是只读的TextStream对象
该对象有4个属性6个方法

属性
AtEndOfLine       只读属性。判断光标是否在行末。类型:Boolean
AtEndOfStream     只读属性。判断光标是否在文末。类型:Boolean
Column            只读属性。返回当前光标所在列号。类型:Long
Line              只读属性。返回当前光标所在行号。类型:Long

方法
Close             停止输入功能
Read              从光标位置读取数据,并相应移动光标位置
ReadAll           从光标位置读取全部数据,并移动光标到文末
ReadLine          从光标位置读取本行数据,并移动光标到下一行行首
Skip              光标位置后移
SkipLine          光标移到下一行行首

一般来说,Wscript.exe是vbs文件的默认执行程序

也可以在命令行用Cscript.exe执行vbs文件

Wscript.StdIn只能在Cscript.exe命令行环境执行,否则报错

--------------------------------------------------------------------------------

属性:Wscript.StdOut
只读属性。用于Cscript.exe命令行环境输出信息。类型:TextStream对象

Set TextStream = Wscript.StdOut

标准的TextStream对象有4个属性9个方法

Wscript.StdOut对象是只写的TextStream对象
该对象有2个属性4个方法

属性
Column            只读属性。返回当前光标所在列号。类型:Long
Line              只读属性。返回当前光标所在行号。类型:Long

方法
Close             关闭对象
Write             从光标位置写入数据
WriteBlankLines   从光标位置插入空行,相当于回车换行
WriteLine         从光标位置写入数据并回车换行

一般来说,Wscript.exe是vbs文件的默认执行程序

也可以在命令行用Cscript.exe执行vbs文件

Wscript.StdOut只能在Cscript.exe命令行环境执行,否则报错

--------------------------------------------------------------------------------

属性:Wscript.StdErr
只读属性。用于Cscript.exe命令行环境输出错误信息。类型:TextStream对象

Set TextStream = Wscript.StdErr

标准的TextStream对象有4个属性9个方法

Wscript.StdErr对象是只写的TextStream对象
该对象有2个属性4个方法

属性
Column            只读属性。返回当前光标所在列号。类型:Long
Line              只读属性。返回当前光标所在行号。类型:Long

方法
Close             关闭对象
Write             从光标位置写入数据
WriteBlankLines   从光标位置插入空行,相当于回车换行
WriteLine         从光标位置写入数据并回车换行

一般来说,Wscript.exe是vbs文件的默认执行程序

也可以在命令行用Cscript.exe执行vbs文件

Wscript.StdErr只能在Cscript.exe命令行环境执行,否则报错

评分

参与人数 1技术 +1 收起 理由
c755731262 + 1 非常感谢

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 18:15 , Processed in 0.018648 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表