io流獲取返回值 ruby CMD中獲取命令返回值

2021-10-22 19:28:40 字數 1494 閱讀 4887

例如指令:

tasklist|find /i "mongod.exe"

返回的結果是:

c:\users\ruby>tasklist|find /i "mongod.exe"

mongod.exe 8364 console 2 165,864 k

可以通過一起bat指令碼讀取值:

@echo off

for /f "tokens=2" %%i in ('tasklist^|find /i "mongod.exe"') do set val=%%i

echo %val%

pause

其中:如果 tokens=1,那麼結果為mongod.exe

如果 tokens=3, 那麼結果為console

如果 tokens=4,那麼結果為2

如果 tokens=5,那麼結果為165,864

如果 tokens=5,那麼結果為k

也就是說,tokens讀取的,是忽略空格的列的值!

注意:如果要在命令中使用管道符,需要新增 ^ 符號

乙個完整的應用啟停的例子:

@echo off

rem "如果是start那麼按照後台啟動的方式執行mongodb"

rem "如果是stop,那麼關閉mongodb"

rem "如果是restart,那麼重啟""

rem "預設前台啟動mongod"

if "%1"=="start" (

cmd /c start /b mongod -f "d:\program files\mongodb-win32-x86_64-2012plus-4.2.6\mongod.conf" &&echo mongodb.exe已啟動

else if "%1"=="stop" (

taskkill -f -im mongod.exe

else if "%1"=="restart" (

taskkill -f -im mongod.exe > nul

cmd /c start /b mongod -f "d:\program files\mongodb-win32-x86_64-2012plus-4.2.6\mongod.conf" && echo 已重新啟動mongodb.exe

else if "%1"=="status" (

for /f "tokens=2" %%i in ('tasklist^|find /i "mongod.exe"') do set mpid=%%i

tasklist|find /i "mongod.exe" > nul && echo mongodb.exe執行中, pid為%mpid% || echo mongodb.exe未執行

else (

tasklist|find /i "mongod.exe" > nul && echo mongodb.exe已啟動,不必重複啟動 || mongod -f "d:\program files\mongodb-win32-x86_64-2012plus-4.2.6\mongod.conf"

IO流read方法返回值

1 byte buf new byte 1024 int length bufferedinputstream.read byte 如果傳入緩衝陣列,內容是儲存到緩衝陣列中,返回值是儲存到緩衝陣列中的位元組個數 read 從輸入流中讀取資料的下乙個位元組,返回0到255範圍內的int位元組值。如果因...

expect獲取返回值

對於獲取多台server狀態且不用互動須要用到expect,但有時候expect無法獲取返回值。這裡解釋一下expect怎樣獲取返回值 expect c spawn 1 expect assword eof expect eof catch wait result exit lindex resul...

C 獲取IPCONFIG 返回值

在我們獲取本機區域網ip以及其他相關資訊時,直接呼叫系統ipconfig,也是一種很有效的方法。以下是我用c 實現的 讀取ipconfig的返回值的 獲取ipconfig返回值 返回 ipconfig輸出 public static string getipconfigreturns return ...