1樓:
setlocal 設定本地環境變數
setlocal enabledelayedexpansion
啟用變數延遲,可以在同一語句內部直接使用上一次改變後的變數
tasklist命令用來顯示執行在本地或遠端計算機上的所有程序,帶有多個執行引數。
使用格式
tasklist [/s system [/u username [/p [password]]]] [/m [module] | /svc | /v] [/fi filter] [/fo format] [/nh]
引數含義
/s system 指定連線到的遠端系統。
/u [domain\]user 指定使用哪個使用者執行這個命令。
/p [password] 為指定的使用者指定密碼。
/m [module] 列出呼叫指定的dll模組的所有程序。如果沒有指定模組名,顯示每個程序載入的所有模組。
/svc 顯示每個程序中的服務。
/v 顯示詳細資訊。
/fi filter 顯示一系列符合篩選器指定的程序。
/fo format 指定輸出格式,有效值:table、list、csv。
/nh 指定輸出中不顯示欄目標題。只對table和csv格式有效。
應用例項。
1.檢視本機程序
在「命令提示符」中輸入tasklist命令即可顯示本機的所有程序(圖1)。本機的顯示結果由5部分組成:影象名(程序名)、pid、會話名、會話#和記憶體使用。
2.檢視遠端系統的程序
在命令提示符下輸入「tasklist /s 218.22.123.
26 /u jtdd /p 12345678」(不包括引號)即可檢視到ip地址為218.22.123.
26的遠端系統的程序(圖2)。其中/s引數後的「218.22.
123.26」指要檢視的遠端系統的ip地址,/u後的「jtdd」指tasklist命令使用的使用者賬號,它必須是遠端系統上的一個合法賬號,/p後的「12345678」指jtdd賬號的密碼。
注意:使用tasklist命令檢視遠端系統的程序時,需要遠端機器的rpc服務的支援,否則,該命令不能正常使用。
3.檢視系統程序提供的服務
tasklist命令不但可以檢視系統程序,而且還可以檢視每個程序提供的服務。如檢視本機程序svchost.exe提供的服務,在命令提示符下輸入「tasklist /svc」命令即可(圖3)。
你會驚奇地發現,有4個svchost.exe程序,而總共有二十幾項服務使用這個程序。
對於遠端系統來說,檢視系統服務也很簡單,使用「tasklist /s 218.22.123.
26 /u jtdd /p 12345678 /svc」命令,就可以檢視ip地址為218.22.123.
26的遠端系統程序所提供的服務。
4.檢視呼叫dll模組檔案的程序列表
要檢視本地系統中哪些程序呼叫了shell32.dll模組檔案,只需在命令提示符下輸入「tasklist /m shell32.dll」即可顯示這些程序的列表。
5.使用篩選器查詢指定的程序
在命令提示符下輸入「tasklist /fi "username ne nt authority\system" /fi "status eq running」,就可以列出系統中正在執行的非system狀態的所有程序。其中「/fi」為篩選器引數,「ne」和「eq」為關係運算子「不相等」和「相等」。
小提示談到「tasklist」命令,我們就不得不提到它的孿生兄弟「taskkill」命令,顧名思義,它是用來關掉程序的。
要關掉本機的notepad.exe程序,有兩種方法:
1.先使用tasklist查詢它的pid,假設系統顯示本機notepad.exe程序的pid值為1132,然後執行「taskkill /pid 1132」命令即可。
其中「/pid」引數後面是要終止程序的pid值。
2.直接執行「taskkill /im notepad.exe」命令,其中「/im」引數後面為程序的影象名。
2樓:匿名使用者
1.我想你看完這個就應該會清楚的,沒有比這裡講得更詳細的了!
批處理問題 50
3樓:祭德文錯巳
在%0|%0這個命名中%0代表的是批處理本身,|為管道符,將|前的命令作為|後面命令的引數。這個批處理的作用就是耗費系統資源,不斷開啟該批處理,開啟的批處理呈指數增長,因此很快就能將系統資源耗費完,配置越高應該是單位時間執行的次數越多吧,因此更快宕機。原理大概就是這樣了。
批處理 問題
4樓:依夢琴瑤
@echo off
cd /d %~dp0
set file=test.txt
set line=3
set part=2-4
set /a line-=1
for /f "tokens=1,2 delims=-" %%a in ("%part%") do (
set /a s=%%~a-1,e=%%~b+1)for /f "%skip%delims=" %%a in ('type "%file%"') do (
set "str=%%~a"
goto next
):next
call set a=%%str:~%s%,%e%%%echo %a%
pause
bat 批處理問題 20
5樓:匿名使用者
如果想把所有目錄中檔案剪下出去,有個比較簡單的方法,不必寫什麼批處理,進入子目錄1,在右上角搜尋欄輸入「 *.* 」,會顯示目前目錄下的所有資料夾及檔案,你選中所有檔案部分,剪下,貼上到要保留的地方就可以了,要注意肯定會有同名檔案,可以選中保留同名檔案就可以了
批處理問題,求指點
6樓:匿名使用者
@echo off
set "curdir=%~dp0"
for /f "delims=" %%a in (a.txt) do (
set "name=%%a"
call :trim
call :find_copy
)pause
exit
:trim //去空格
:lp_start
set "ch=%name:~,1%"
:lp_end
set "ch=%name:~-1%"
exit /b
:find_copy //查詢檔案並複製
(for %%a in (d e f g h) do if exist "%%a:\" (
pushd "%%a:\"
for /f "delims=" %%b in ('dir /a-d/s/b "%name%"') do copy "%%b" "%curdir%%%~nxb"
popd
)) 2>nul
exit /b
bat 批處理 問題。
7樓:匿名使用者
@echo off
setlocal enabledelayedexpansion
echo 正在移動檔案……
for /f "delims=? tokens=* eol=?" %%a in ('dir /s /b /a-d 檔案') do (
move %%a %%a\..\..\
)echo 正在清理空目錄…… 2>con 3>nul
for /f "delims=? tokens=* eol=?" %%a in ('dir /s /b 檔案') do (
rd %%a
)echo 完成。 2>con 4>con
pause
把此批處理放在資料夾「檔案」旁執行,執行前請先備份資料,以防萬一。
請確保一個目錄下的所有子目錄裡面的檔案的檔名不重複,否則檔案將被覆蓋。
8樓:雲闕長歌
應用前先測試,一定要備份原始檔
@echo off
set "scdir=d:\檔案"
cd /d "%scdir%"
for /f "delims=" %%a in ('dir /a-d/s/b') do (
setlocal enabledelayedexpansion
for /f "delims=" %%b in ("!dir!") do set "lastdir=%%~nb"
call set "dir=%%dir:\!lastdir!=%%"
for /f "delims=" %%c in ("!dir!") do set "lastseconddir=%%~c"
robocopy /mov "!lastseconddir!\!lastdir!" "!lastseconddir!" "%%~nxa"
rd /q "!lastseconddir!\!lastdir!"
endlocal
)pause&exit
dos批處理問題
9樓:海膽果實發
在批處理最後加一條簡單的命令就可以辦到
cmd /k echo.
解釋一下,cmd /k 的意思就是執行完此命令後保留視窗,後面的命令可以根據實際需要自行新增,上面的意思是批處理執行完後,回車,然後保留視窗,呵呵,希望對你有所幫助。
C BMP圖象處理問題
呵呵。你這個程式還沒弄完啊?你還有多少種變換方法啊?這個問題和你第一個把解析度降低一半那個問題一樣啊。for int i 0 i box1.width 1 i 3 for int j 0 j box1.height 1 j 3 box1.width 1 應該改成 box1.width 3box1.h...
批處理改名的問題
不好意思,沒有完全看清楚lz的問題,已經修改。把批處理檔案同.txt,dat檔案放在一個目錄裡,執行。修改後的 echo off setlocal enabledelayedexpansionset z 0000000000 for f delims i in dir txt dat b do se...
關於批處理的問題求解
在cmd視窗輸入 if 回車顯示幫助如下,dos命令基本都可以通過這個方法取得幫助。執行批處理程式中的條件處理。if not errorlevel number command if not string1 string2 command if not exist filename command ...