bash脚本的等效批处理脚本

时间:2013-10-15 11:48:47

标签: windows bash batch-file awk find

我有一个bash脚本,用于获取计算机上存在的磁盘数量。

echo "rescan" > $script
echo "list disk" >> $script
disks=$($diskpart /s $script | tee ${logfile} | awk '$1 == "Disk" && ($3 == "Online" || $3 == "Offline") {print $2}')

我试图为Windows机器做同样的事情。我有相同的以下脚本:

echo > script.txt rescan
echo >> script.txt list disk

但我不确定如何继续下一步在批处理脚本中使用awk。 您能否建议如何在批处理脚本中获取磁盘的值。我是批量剪辑的新手。

我已经搜索了一段时间,发现awk的等价物是“FOR / F”,但我不确定如何在我目前的情况下使用相同的

1 个答案:

答案 0 :(得分:0)

Windows VistaWindows 7Windows XP Pro下,您应该可以使用Windows Management Instrumentation command(wmi)执行此操作:

WMIC LOGICALDISK GET DEVICEID, VOLUMENAME

以下链接说明了如何使用wmic

列出不同类型的信息