[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
可以参照今天的贴子里有个批处理与Js混排的做法,也可以弄成与vbs混排,原理类似

TOP

  1. '&cls&@echo off&cscript -nologo -e:vbscript %~fs0&pause
  2. set ws = createobject("wscript.shell"):ws.run "iexplore http://www.baidu.com",1
复制代码
1

评分人数

TOP

我在查有没有法让需要接收文件名的命令接收一个临时内存里面的数据,比如标准输出什么的,像linux下就可以直接用-来接收输入输出并充当临时文件的角色,不知道windows下有没有类似方法实现,请问apang兄有没有点提示呢

TOP

嗯,类似那样的用法,在bash中-的作用有很多,其中一种就是充当临时文件而不用生成临时文件,但又能作为文件参数传给需要的程序。

TOP

明天上电脑找下例子,linux下的哈

TOP

tar -cvf – /var/log | zip -r log.zip -
就像这样,tar与zip都需要接收一个文件名作为输入输出,但这个文件名是这两个命令共用且不需要存在的,就用-来过渡,它不生成实际文件。
1

评分人数

    • CrLf: 谢谢指点,学习了技术 + 1

TOP

回复 14# DAIC


    这只是为了说明一下-在linux中的应用,事实上,这条语句也可以用其它方式达到。这是纯为了演示而凑起来的。-作为替代输入输出,在网页抓取分析时用得比较多。

TOP

回复 12# CrLf


    这里的"-"理解为“指向具体内容的句柄”可能更贴切点。

TOP

楼层跑偏了,讨论非临时文件的解决办法去了……

TOP

后来又看到一些帖子,不生成临时文件一行批处理也能达到楼主的要求了。
  1. @if (0)==(0) echo off&cscript -nologo -e:jscript %~fs0&pause&goto :EOF @end;var ws=WSH.createobject("wscript.shell");ws.run("iexplore http://www.baidu.com",1);
复制代码

TOP

回复 20# CrLf


    感觉别扭哇?我也觉得。之前没用过microsoft的js,一直是在网页中用的javascript,看到论坛的批处理与jscrip混排后惊奇之心无以复加,原本最习惯的是vbs,可惜vbs不支持多行注释,只好边百度怎样用相应的jscript语句来达到vbs的同等功能。奇怪的是最初我想的是用new ActiveXObject的方式貌似失败,才找了WSH.createObject这么个怪异的语句……结果是可以用new activexobject的……

TOP

回复 22# CrLf


    第二个方案棒,这就相当于linux那个"-"号了。能代替具体文件,但又不生成。真是“众里寻她千百度,蓦然回首,那代码却在 回车 回帖处”……

TOP

回复 24# CrLf


    有流文件相关知识的介绍吗?想详细了解一下。

TOP

……谢谢。

TOP

这个东西怎么看都像是给黑客准备的呢……

TOP

返回列表