主頁 > 知識(shí)庫(kù) > PowerShell中調(diào)用外部程序和進(jìn)程操作命令例子

PowerShell中調(diào)用外部程序和進(jìn)程操作命令例子

熱門標(biāo)簽:服務(wù)外包 鐵路電話系統(tǒng) 呼叫中心市場(chǎng)需求 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 AI電銷 Linux服務(wù)器 百度競(jìng)價(jià)排名

學(xué)習(xí)PowerShell,我們不指望通過C#編程去搞定所有事情,我們應(yīng)該記住cmd.exe或者說批處理給我們留下的寶貴財(cái)富——通過調(diào)用外部程序去解決問題。調(diào)用了外部程序,勢(shì)必就要對(duì)進(jìn)程進(jìn)行管理,這就是本文要介紹的。

1、Get-Process,返回進(jìn)程。

Get-Process [-id] ,按pid獲取
Get-Process -name ,按進(jìn)程名
Get-Process -inputObject ,傳入?yún)?shù)
舉例:get-process -name mmc,顯示所有mmc的進(jìn)程。

2、Start-Process,啟動(dòng)一個(gè)進(jìn)程

語法:Start-Process -FilePath 可執(zhí)行文件的路徑> -ArgumentList 參數(shù)列表>
說明:在PowerShell v2.0以上才支持!

3、Stop-Process,停止一個(gè)或多個(gè)正在運(yùn)行的進(jìn)程。
Stop-Process [-id] ,停止指定的pid數(shù)組的進(jìn)程
Stop-Process -name ,停止一組進(jìn)程名列表
Stop-Process -inputObject ,停止一個(gè)Process類型的進(jìn)程數(shù)組里面的所有進(jìn)程。

如:Stop-Process -name notepad,這個(gè)功能也可以這樣實(shí)現(xiàn):
$pro = Get-Process -name notepad; $pro.Kill(); 或 (Get-Process -name notepad).Kill();

Windows提供了一個(gè)taskkill.exe程序,通過它也可以停止程序:taskkill /f /im java.exe

用這個(gè)命令,當(dāng)我們要結(jié)束在cmd.exe里面運(yùn)行的java.exe時(shí),我們只結(jié)束java.exe,這個(gè)時(shí)候cmd也會(huì)被結(jié)束。

4、使用點(diǎn)(.)調(diào)用ps1或批處理文件(Invoke-Expression)
語法:.
說明:可以在PowerShell交互環(huán)境中和PS1文件中調(diào)用現(xiàn)有的PS1文件,使用點(diǎn)(.)作為調(diào)用符。我曾經(jīng)試過使用Invoke-Item,好像沒有啟動(dòng)得了。
也可以使用Invoke-Expression(Alias為iex)命令來實(shí)現(xiàn),有兩種用法:

復(fù)制代碼 代碼如下:

C:\PS>invoke-expression -command "C:\ps-test\testscript.ps1"
C:\PS> "C:\ps-test\testscript.ps1" | invoke-expression

注意:這里可以使用ps1,也可以使用其它可執(zhí)行的批處理文件,如.cmd、.bat等。

5、以默認(rèn)打開方式打開文件(Invoke-Item)
語法:Invoke-Item 要打開的文件路徑>
舉例:Invoke-Item "c:\1.txt" #將使用txt文件的默認(rèn)打開工具(即記事本)打開c:\1.txt
說明:文件必須存在,否則會(huì)報(bào)告“該路徑不存在”的錯(cuò)誤。

6、使用調(diào)用程序
語法: 可執(zhí)行文件路徑> [參數(shù)列表>]
舉例:

復(fù)制代碼 代碼如下:
$execPath="D:\Progra~1\FlashFXP\flashfxp.exe"
$execArgs="-upload ftp://u:p@ip:21 "
$execArgs=$execArgs+"-remotepath=`"/`" "
$execArgs=$execArgs+"-localpath=`"d:\123\`" "
$execPath $execArgs.Split()

7、使用cmd執(zhí)行DOS內(nèi)部或外部命令
說明:有很多DOS命令被CmdLet的別名占用了,所以如果還像之前一樣使用就會(huì)發(fā)現(xiàn)參數(shù)可能不正確了。為了可以與以前批處理里面用法兼容,可以使用cmd /c來調(diào)用DOS內(nèi)部或外部命令。
語法:cmd /c
舉例:cmd /c del /s /q D:\testdir\testsubdir\*.*

您可能感興趣的文章:
  • PowerShell中運(yùn)行CMD命令的技巧總結(jié)(解決名稱沖突和特殊字符等問題)
  • PowerShell中使用Get-ChildItem命令讀取目錄、文件列表使用例子和小技巧
  • PowerShell重啟服務(wù)命令Restart-Service詳細(xì)介紹
  • Win8系統(tǒng)中使用PowerShell安裝APPX應(yīng)用命令介紹
  • PowerShell中使用Test-Path命令檢查文件或文件夾路徑是否存在示例
  • Windows Powershell 執(zhí)行外部命令
  • 25個(gè)常用PowerShell命令總結(jié)
  • 簡(jiǎn)單談?wù)凱owerShell 4.0中的新命令

標(biāo)簽:湘潭 仙桃 湖南 黃山 崇左 銅川 蘭州 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PowerShell中調(diào)用外部程序和進(jìn)程操作命令例子》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266