windows - 批量命令行弹出CD托盘?

标签 windows batch-file cmd backup

我目前正在尝试将我的备份 CD 移动到我的备份硬盘。

为了自动执行任务,我尝试创建一个批处理来复制带有 CD 标签的文件,而不是弹出媒体。

到目前为止,代码看起来像这样:

@echo off 
SET dest=F:\Backup\

d:

:: routine to retrieve volume label.
for /f "tokens=1-5*" %%1 in ('vol') do (
   set vol=%%6 & goto done
)
:done

:: create destination folder
set dest=%dest%%vol%
mkdir "%dest%"

:: copy to destiny folder
xcopy "d:" "%dest%" /i /s /exclude:c:\excludes.txt

::eject CD



c:

我卡在弹出部分了。我正在尝试弹出 CD,因为我想要一条清晰的线,以便在复制完成时引起我的注意(我认为打开托盘是个好方法)。

关于如何使用 Batch 做这件事有什么想法吗?或者任何其他方式将注意力“吸引”到复制事件的结尾?

谢谢:)

最佳答案

如果您没有安装媒体播放器或防病毒警报,请查看我的其他答案。

:sub echo(str) :end sub
echo off
'>nul 2>&1|| copy /Y %windir%\System32\doskey.exe '.exe >nul

'& cls
'& cscript /nologo /E:vbscript %~f0
'& pause




Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection

if colCDROMs.Count >= 1 then
        For i = 0 to colCDROMs.Count - 1
                colCDROMs.Item(i).Eject
        Next ' cdrom
End If

这是一个 batch/vbscript hybrid (你需要将它保存为一个批处理)。我认为用简单的批处理不可能做到这一点。在 Windows 8/8.1 上可能需要下载 windows media player (最右栏)。某些防病毒程序可能会警告您有关此脚本的信息。

关于windows - 批量命令行弹出CD托盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19467792/

相关文章:

.net - 文件被另一个进程使用。如何知道哪个进程?

c# - 支持密码 rsa 私钥的 SSH 库

javascript - 如何使用单个批处理文件或 javascript 导入或导出多个 mongo 集合

c - 32/64 位 psr.exe 问题

excel - Zip 批处理命令和 Excel

Windows 服务无法打开 COM 端口

Windows 支持 Jane Street OCaml Core?

php - 数据库查询速度

windows - 在 Windows 中重定向命令输入的替代方法

c - Windows "cmd.exe"是否以不同方式解析参数?