【问题标题】:CMD doesn't wait to finish processCMD 不等待完成过程
【发布时间】:2018-03-04 21:17:16
【问题描述】:

当我使用命令时

<path exc.xlsx> 

它启动 excel 文件工作并等到我关闭文件后才能键入下一个命令。我的问题是,当其他 excel 文件正在运行时,cmd 不会等待关闭文件并转到下一行。有必要键入将强制 cmd 等到我关闭 excel 文件的命令,即使在另一个 excel 文件正在运行时也是如此。我尝试了很多来自互联网的命令,但似乎没有一个能正常工作。例如:

start /wait  exc.xlsx && exit
exc.xlsx  cmd /k
exc.xlsx|rem

我使用的是 Windows7。

【问题讨论】:

  • 或许可以将 Excel 配置为在单独的进程中加载​​每个文档,我不记得了。这是唯一可能的解决方案。如果文档没有专门的进程,则命令解释器无法判断您何时关闭它。
  • 即使只打开一个文件,我也找不到 excel 进程。我在 python 中做了一个简单的脚本,它在循环中工作并尝试更改文件的名称。当它可以更改名称时,这意味着文件已关闭,但有时脚本似乎卡住了,无法打开我的 excel 文件。

标签: cmd windows-7


【解决方案1】:

我尝试了这种方法,但有时无法正常工作。 &lt;os.rename&gt; 行尝试更改文件名。如果可以,则意味着文件已关闭并中断循环,但使用该脚本有时无法打开 excel 文件。我没有我想的那么先进,也找不到另一种方法来检查文件是否已关闭。

import os
def is_open(file_name):
   if os.path.exists(file_name):
      while True:

          try:
                os.rename(file_name, file_name)  
                break
          except:
                continue
      time.sleep(0.001)
is_open('exc.xlsx')

这不是很体面,并且使用大量处理器。如果有一种使用编程语言(最好是 python)的方法,我可以在我的脚本中实现它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-04
    相关资源
    最近更新 更多