2012-02-06 40 views
2

第一篇文章。爲什麼我不能在TASKLIST/FI「WINDOWTITLE」函數/過濾器中使用通配符?

我正在寫一個批處理文件來檢查打開的窗口的窗口標題,並關閉它們並重新打開它們,如果它們不符合我想要的。 (主要原因是如果'頁面無法加載',則自動重啓瀏覽器)。

我的問題就出在這裏...

tasklist /FI "WINDOWTITLE eq Kingdoms of Camelot on Facebook - Mozilla Firefox"2>NUL | find /I /N "firefox.exe"2>NUL 
    if "%ERRORLEVEL%"=="0" goto runningfire 
    if "%ERRORLEVEL%"=="1" goto notrunningfire 

此檢查打開的窗口,他們的頭銜比較「在Facebook上亞瑟王國 - Mozilla Firefox瀏覽器」這個偉大的工程,等到!!!

對我來說,主要的煩惱是每當你收到facebook通知/好友請求/消息時,它就會將標題欄更改爲(1)Kingdoms .....然後腳本不起作用

我花了AGES ,主要是因爲我在這方面非常新手,而且我知道ve很少有關於批處理文件和腳本。

所以我的問題是這樣的......

是否有可能effectly添加通配符的標題要求開始......(注意*在標題前)

tasklist /FI "WINDOWTITLE eq *Kingdoms of Camelot on Facebook - Mozilla Firefox"2>NUL | find /I /N "firefox.exe"2>NUL | find /I "[6]"2>NUL 
    if "%ERRORLEVEL%"=="0" goto runningfire 
    if "%ERRORLEVEL%"=="1" goto notrunningfire 

這是明顯的解決方案,但它根本不起作用,返回錯誤:無法識別搜索過濾器。

我也試過3 ???以代表(1)和(2)等,但他們也不會工作....

任何想法?請瞄準一個完整的,全然的小白菜。

回答

2

你爲什麼不嘗試

tasklist /fi "imagename eq firefox.exe" /v | find /i "Kingdoms of Camelot on Facebook - Mozilla Firefox" 2>NUL 
if .... 

我用同樣的方法來獲取具有相同的窗口標題前綴進程的PID的和它的作品。

PS:據我測試任務列表命令它的不認可通配符語法

+0

任務列表是完美的獲得與輸出的所有CMD.EXE或子進程的java.exe – 2015-08-20 13:15:50

-1

這工作。要在批處理文件中使用它,添加一個插入符號(^):

tasklist /fi "imagename eq firefox.exe" /v ^| find /i "Kingdoms of Camelot on Facebook - Mozilla Firefox" 2>NUL 
相關問題