[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 用cmd命令打开指定文件的属性窗口

如何用批处理命令, 打开指定文件的属性窗口

就是选中文件后,点右键, 再点属性后弹出的那个窗口, 是不是一个shell命令, 从哪里可以找到?

  1. ' & cls & cscript.exe /nologo /e:vbscript "%~f0" "C:\Program Files" & pause & exit
  2. Set oShell = CreateObject("Shell.Application")
  3. Set oFolderItem = oShell.NameSpace(17).ParseName(wsh.Arguments(0))
  4. oFolderItem.InvokeVerb "Properties"
  5. wsh.Sleep 60 * 1000
复制代码

QQ 20147578

TOP

回复 2# czjt1234

多谢大佬,

我试了一下文件参数, 单文件可以, 那多个文件怎么实现呢?
手动操作时, 选定了多个文件, 然后点右键, 选择属性, 弹出一个多个文件属性窗口

TOP

vbs
  1. Set oShell = CreateObject("Shell.Application")
  2. Set oFolder = oShell.NameSpace("C:\windows")
  3. Set oFolderItems = oFolder.Items()
  4. oFolderItems.Filter &H40 + &H80 + &H10000, "*.exe"
  5. oFolderItems.InvokeVerbEx "Properties"
  6. wsh.Sleep 60 * 1000
复制代码
指定文件夹下的所有 .exe 文件

QQ 20147578

TOP

回复 4# czjt1234


    多谢大佬, 我的意思是里面的两个文件, 比较, a.txt和c.txt  只显示这两个文件的属性窗口

TOP

  1. Set oShell = CreateObject("Shell.Application")
  2. Set oFolder = oShell.NameSpace("C:\windows")
  3. Set oFolderItems = oFolder.Items()
  4. oFolderItems.Filter &H40 + &H80 + &H10000, "?.txt"
  5. oFolderItems.InvokeVerbEx "Properties"
  6. wsh.Sleep 60 * 1000
复制代码
只会这样了,所有单个字母的名字的txt

QQ 20147578

TOP

你可以把你的真实目的说出来
看属性的意义何在,是要看文件总大小,比较2个地方的文件总大小的差异?

QQ 20147578

TOP

回复 7# czjt1234


    目的就是看指定的N个文件的属性, 我知道用PS能取得对象的属性, 但是不直观,

TOP

回复 8# 小白龙


    属性无非总大小啊

要是看指定的几个文件的总大小倒是可以

QQ 20147578

TOP

回复 6# czjt1234


多个文件名试试用分号;隔开
像“a.txt;b.txt”
1

评分人数

TOP

回复 10# idwma


   不行, 提示缺少对象

TOP

回复 11# 小白龙

https://learn.microsoft.com/zh-c ... 2.filedialog.filter
这个是参考文档的,意思应该是一样的,不行就不知道了

TOP

  1. Set oShell = CreateObject("Shell.Application")
  2. Set oFolder = oShell.NameSpace("C:\windows")
  3. Set oFolderItems = oFolder.Items()
  4. oFolderItems.Filter &H40 + &H80 + &H4000 + &H10000, "a.txt;b.txt"
  5. oFolderItems.InvokeVerbEx "Properties"
  6. wsh.Sleep 60 * 1000
复制代码

QQ 20147578

TOP

回复 13# czjt1234


    完整代码是下面这样吗? 一直光标闪,没有动静
  1. ' & cls & cscript.exe /nologo /e:vbscript "%~f0" & pause & exit
  2. Set oShell = CreateObject("Shell.Application")
  3. Set oFolder = oShell.NameSpace("C:\windows")
  4. Set oFolderItems = oFolder.Items()
  5. oFolderItems.Filter &H40 + &H80 + &H4000 + &H10000, "a.txt;b.txt"
  6. oFolderItems.InvokeVerbEx "Properties"
  7. wsh.Sleep 60 * 1000
复制代码

TOP

非要bat吗,我这是vbs
一个是bat后缀名,一个是vbs后缀名
vbs还没有难看的黑框

QQ 20147578

TOP

返回列表