簡體   English   中英

Powershell 運行 Cmd.exe 后不會退出

[英]Powershell Won't Exit After Running Cmd.exe

我正在使用 powershell 來

  1. 關閉訪問數據庫,
  2. 將更新的 Access 前端下載到本地機器,
  3. 更新(覆蓋)本地文檔,以及
  4. 使用cmd.exe啟動帶有參數的 Access 數據庫。

一切正常,但使用cmd.exe命令啟動數據庫后Exit命令不起作用。

如果我注釋掉cmd.exe命令,那么Exit命令就可以正常工作。 但是,如果我使用Exit命令,腳本會停在那里並且Exit命令不起作用。 下面是我正在談論的整個代碼。

## Close Microsoft Access
Stop-process -name MSACCESS -Force

## Download updated Access database to local machine
Copy-Item "F:\New_DB\Win7DBDocs\WC_Sys.mdb" -Destination "C:\DB_Docs" -Recurse -Force

## Copy Documents and Spreadsheets to local machine
echo "Overwriting files C:\DB_WPDocs"
Copy-Item -Path "F:\New_DB\DB_WPDocs\*" -Destination "C:\DB_WPDocs" -Recurse -Force

## Launch Microsoft Access with Parameters
cmd.exe /c "C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE" "C:\DB_Docs\WC_Sys.mdb" /WRKGRP "F:\DB_Docs\Secured.mdw"

Exit

cmd.exe將阻塞,直到MSACCESS.EXE退出。

要使cmd.exe啟動程序並立即返回,請使用start命令:

cmd.exe /c start "C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE" "C:\DB_Docs\WC_Sys.mdb" /WRKGRP "F:\DB_Docs\Secured.mdw"

...或完全刪除cmd.exe並改用Start-Process cmdlet:

Start-Process "C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE" -ArgumentList "C:\DB_Docs\WC_Sys.mdb", /WRKGRP, "F:\DB_Docs\Secured.mdw"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM