我在轻轻关闭 Chrome 以自动清理缓存时遇到了一个小问题。
我有一个网站无法正确刷新,但如果我清理缓存,它会刷新。
现在我有一个带有以下代码的 .bat 文件:
taskkill /F /IM chrome.exe /T > nul
del /q "C:\Users\Francisco\AppData\Local\Google\Chrome\User Data\Default\Cache\*"
FOR /D %%p IN ("C:\Users\Francisco\AppData\Local\Google\Chrome\User Data\Default\Cache\*.*") DO rmdir "%%p" /s /q
timeout 8
start chrome --restore-last-session --start-fullscreen
Run Code Online (Sandbox Code Playgroud)
现在,我知道这会taskkill /F强制关闭进程并且可以正常工作,但是一旦 Chrome 打开,它就会显示一条消息,表明 Chrome 未正确关闭,并询问我是否要恢复上次会话。
如果我删除 /f 选项,Chrome 不会关闭:
错误:PID 为 8580 的进程(PID 辅助进程 8896)无法完成。
原因:这个进程只能强行终止(用/F选项)。
所以......我需要两个选项之一;
我更喜欢第一个选项,因为它更干净。
您可以使用 powershell 关闭所有以 chrome 作为进程名称的窗口。它不会终止任务,但会轻轻关闭所有 chrome 浏览器窗口,就像您单击右上角的十字一样。这是批处理的命令行:
powershell -command "Get-Process chrome | ForEach-Object { $_.CloseMainWindow() | Out-Null}"
Run Code Online (Sandbox Code Playgroud)
参考@tuxy42的答案:您可以用vbscript编写打开chrome浏览器,如下所示:Open_Chrome_Browser.vbs
Set ws = CreateObject("Wscript.Shell")
siteA = "/sf/ask/4376144881/"
ws.Run "chrome -url " & siteA
Run Code Online (Sandbox Code Playgroud)
如果您想安全地关闭它:safely_close_chrome_browser.vbs
Set ws = CreateObject("Wscript.Shell")
psCommand = "Cmd /C powershell -command ""Get-Process chrome | ForEach-Object { $_.CloseMainWindow() | Out-Null}"""
ws.run psCommand,0,True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9550 次 |
| 最近记录: |