批處理(bat)命令學(xué)習(xí)的一些總結(jié)
來(lái)源:易賢網(wǎng) 閱讀:946 次 日期:2014-08-12 14:20:39
溫馨提示:易賢網(wǎng)小編為您整理了“批處理(bat)命令學(xué)習(xí)的一些總結(jié)”,方便廣大網(wǎng)友查閱!

一、set 篇:

1、set(無(wú)開(kāi)關(guān))

set .=test

set.

::若一個(gè)變量以:\.這三個(gè)與路徑相關(guān)的符號(hào)開(kāi)頭,用set查看以該字符打頭的變量時(shí)可以省去一個(gè)空格。

echo %tmp:*\=%

::顯示tmp變量第一個(gè)\之后的部分,其余變量替換與變量偏移太簡(jiǎn)單不解釋

2、set /p 變量名=注釋<設(shè)備名

當(dāng)設(shè)備名為文件時(shí),因?yàn)槲募袚Q行符與回車符伴生,所以只取文件第一行作為var變量的內(nèi)容,但是不超過(guò)1024字節(jié);而當(dāng)設(shè)備名為nul或者com3時(shí),只顯示不換行的注釋,這種情況下可以省略變量名(如:set /p=Hello World

3、set /a,最具技巧的命令之一

set /a n=1,m=2

::同時(shí)把不同數(shù)值分別賦予兩個(gè)變量

set /a a=b=c=d=e=f=1

::用一條算式為多個(gè)變量同時(shí)賦值

set /a "1/n" 2>nul||echo 變量n非純數(shù)字或?yàn)榱?/P>

::利用分母不能為0的特征,用set判斷一個(gè)變量是否為非零純數(shù)字

set n=1

set /a "n=!!123|!!234&!!0"

::位運(yùn)算,!、^、|和&常用于布爾運(yùn)算,而邏輯位移常用于二進(jìn)制運(yùn)算(>>還可判斷數(shù)值是否為負(fù),見(jiàn)下例)

set /a n=-100,"1/(-100>>31)"||echo 變量n為負(fù)數(shù)

::順應(yīng)cmd中的正負(fù)數(shù)存儲(chǔ)特點(diǎn),可以用邏輯位移實(shí)現(xiàn)判斷正負(fù)數(shù)的“布爾運(yùn)算”,可以衍生出繁多的算法,比如稍加改動(dòng)就可以比較兩數(shù)甚至多個(gè)數(shù)的大小

set /a n=~-100

::利用~將所有二進(jìn)制的1、0逆轉(zhuǎn),負(fù)號(hào)在后或在前配合可以實(shí)現(xiàn)簡(jiǎn)單加1或減1,這個(gè)技巧主要用來(lái)減少括號(hào)的使用,因?yàn)閪號(hào)與負(fù)號(hào)的優(yōu)先級(jí)都是高于算數(shù)運(yùn)算符的

set /a test=%test:~5,1%-0

::可以避免%test:~5,1%為空時(shí)出錯(cuò)的情況

set /a 十進(jìn)制=0x十六進(jìn)制,十進(jìn)制=0八進(jìn)制

::快速將十六進(jìn)制與八進(jìn)制數(shù)轉(zhuǎn)為十進(jìn)制,可惜沒(méi)有二進(jìn)制...

:loop

set /a n+=1001

echo %n:~-3%

goto loop

::這比常規(guī)的補(bǔ)位方法更優(yōu)越

for %%a in (test 123 ABC test @#$ 123) do set /a ".%%a+=1"

set .|findstr /v /e "=1"

::經(jīng)典的獲取字符串的重復(fù)次數(shù)的方案

二、for 篇:

這是批處理中最強(qiáng)的內(nèi)部命令,沒(méi)有之一!

1、for(無(wú)開(kāi)關(guān))

代碼如下:

for %%a in (c:\*.*) do echo %%a

::顯示C盤(pán)根目錄下所有非隱藏、非系統(tǒng)屬性文件

for %%a in (.\..) do echo %%~nxa

::顯示上一級(jí)目錄的文件夾名

set str=123,234,345

set str=%str:,=\%

for %%a in (%str%\..) do echo %%~nxa

::用前一個(gè)技巧,巧取倒數(shù)第二段字符串,與for /f "delims=\"相映成趣

for %%a in (*.txt) do (

for /f "useback delims=" %%b in ("%%a") do (

set str=%%b

for %%c in ("!str:分隔符=" "!") do (

for /f "tokens=1*" %%d in (%%c) do echo %%~d

)

)

)

::不帶參數(shù)的for與for /f配合,威力極大,僅舉此一例

for %%a in (123) do for %%a in (234) do for %%a in (345) do echo %%a

::其實(shí)如果只讀取最后一層for的參數(shù),即使多層for嵌套也可以使用同樣的參數(shù),比如%%a

for %%z in (!tmp!) do echo !%%z!

::目前已知的擺脫call實(shí)現(xiàn)多層變量嵌套的最好方法,不少人用

2、for /l

for /l %%a in () do echo 

::無(wú)限循環(huán),步數(shù)為0也是一樣的效果,但是沒(méi)這個(gè)簡(jiǎn)潔

for /l %%a in (-4 1) do echo %%a

::for /l中的三項(xiàng)參數(shù)從左至右的三位分別是初始值、步數(shù)、終止點(diǎn),當(dāng)用戶給定的數(shù)量不足時(shí),將按從右至左的順序把不足的一項(xiàng)賦為0

3、for /d /r

for /r /d %%a in (*) do echo %%a

::可以遍歷所有子文件夾,之所以可以聯(lián)用r開(kāi)關(guān)和d開(kāi)關(guān)是因?yàn)樗鼈兊膮?shù)有交集,l開(kāi)關(guān)和f開(kāi)關(guān)就不行了。

4、for /f

for /f本身的技巧并不是特別多,它的優(yōu)勢(shì)是能夠?qū)⑵渌畹妮敵鲎鳛檩斎雭?lái)分析,所以for /f可以說(shuō)是當(dāng)之無(wú)愧的內(nèi)部命令之王

for /f "tokens=* delims=0123" %%a in ("0000123456") do echo %%a

::去除前綴的n個(gè)字符

for /f "skip=99" %%a in (1.txt) do echo 1.txt至少100行

::以前看到某版主寫(xiě)的,印象頗深。

for /l %%a in (1 1 10) do (

for /f "tokens=1,2* delims=\" %%a in ("!tmp!") do (

for %%c in (%%a %%b) do echo %%c

set tmp=%%c

)

)

::將tokens的取值范圍無(wú)限拓展

set tmp=123=234=345=456

for /l %%a in (1 1 40) do (

for /f "tokens=1,2* delims==" %%a in ("!tmp!") do (

set str=!str!,%%a,%%b

set tmp=%%c

)

)

echo %str:~1%

::有時(shí)候set變量替換是無(wú)法替換一些特殊字符的,此時(shí)可以用for /f處理

set test=d:\test\

for %%a in (test.*) do (

if "%%~za" neq "%%~z$test:a" replace /p /u "%%a" "%%~dp$test:a"

)

::判斷當(dāng)前目錄下以test為名的文件是否在d:\test\文件夾下存在同名文件,如果存在且大小不同、修改日期更早,則替換之,否則不做處理。for幫助信息中的“%%~dp$path:a”參數(shù)似乎沒(méi)見(jiàn)人用過(guò),雖然它的適用范圍很狹隘,但是特定的情況下不妨一試。

setlocal enabledelayedexpansion

set t=tmp

set @=t

for /f %%a in ('echo !%@%!') do echo !%%a!

::另一種三層嵌套方法,其實(shí)不實(shí)用。

三、findstr 篇

我最鐘愛(ài)的命令,可惜外部命令的啟動(dòng)速度太慢,所以實(shí)際運(yùn)用時(shí)較少露面。

findstr /s /m .* *.*

::其實(shí)findstr也是一個(gè)dir,雖然比dir慢些,卻多了查找文件內(nèi)容的功能

findstr /n .* 1.txt|findstr "^5000:"

::非常實(shí)用的取指定行的方法,配合正則可以取指定范圍之內(nèi)的行

set /p n=請(qǐng)輸入數(shù)字或大小寫(xiě)字母

(echo !n!)|findstr /i "[0-9a-Z]"&&echo 輸入有誤!

::這個(gè)夠?qū)嵱冒桑坎唤忉?/P>

dir|findstr ['-Z]

::利用findstr和if命令中字符的實(shí)際大小順序?qū)崿F(xiàn)查找含有寬字符的行

findstr /x ".........." 1.txt

::查找1.txt中10字節(jié)的行

(type 1.txt&echo;)|findstr /o .*|more +1

::加上for,很容易獲取1.txt每行的字節(jié)數(shù)

findstr>1.txt /m /p .* *.*

dir /b /a-d|findstr>2.txt /v /i /m /g:1.txt

::獲取含有不可打印字符的文件名,關(guān)鍵是findstr取集

findstr "^Rar!" /g:1.txt

::此處1.txt是上個(gè)技巧的1.txt,內(nèi)容是所有含不可打印字符的文件列表,此技巧可搜索rar文件,雖然簡(jiǎn)單,但是至今也未出錯(cuò)過(guò),原創(chuàng)。

more>tmp +2 1.txt

findstr>前兩行.txt /x /v /g:1.txt 2.txt

::有時(shí)候可用此辦法獲取前幾行,當(dāng)然,絕大部分情況下沒(méi)有for /f合適,而且存在特殊字符bug

@echo off

findstr /n .* 1.txt>tmp1

find /n /v "" 2.txt|more>tmp2 +2

for /f "tokens=2*delims=]:" %%a in ('fc /n /lb10000 tmp1 tmp2^|sort') do (

echo;%%b

)

del tmp?

pause

::qzwqzw首創(chuàng)用fc /n同時(shí)輸出雙文本的思路,但是存在排序有可能被打亂的缺陷,所以加了個(gè)find彌補(bǔ)一下

四、start、call、cmd 篇

之所以放在一起,是因?yàn)檫@三個(gè)命令的功能有所交集

1、start

@echo off

%1 cd.>tmp

set /p=%1

%1 start /b "" %0 :(五秒后退出) tm

if not "%1"=="" goto %1

set /p n=輸入任意字符

if defined n (

del tmp

echo 您輸入的是%n%,五秒后退出。

) else echo 輸入為空!五秒后退出。

:(五秒后退出)

ping /n 5 localhost>nul

if exist %2p exit

pause

::妙用start /b讓set /p實(shí)現(xiàn)choice的延時(shí)功能,不知道哪位前輩首創(chuàng)的,再次贊一個(gè)。此處%1、%2的技巧僅作點(diǎn)綴,我只是覺(jué)得這樣“搭積木”很好玩才強(qiáng)加上去的。

2、call

set a=b

set b=c

call echo %%%a%%%

::不使用變量延遲仍然可以借助call實(shí)現(xiàn)變量的延遲讀取與嵌套,但是效率上有缺陷

3、cmd

set a=b

set b=c

cmd /c echo %%%a%%%

::這證明call一個(gè)命令時(shí)的效果近似于cmd /c,二者的區(qū)別體現(xiàn)在"for"和"if"這兩個(gè)命令不能用call運(yùn)行,因?yàn)閒or和if其實(shí)可能只是關(guān)鍵字,而非真實(shí)存在的命令

set a=b

set b=c

cmd /v:on /c echo !%a%!

::不需要setlocal,照樣可以使用變量延遲

%1 %0 :: echo;成功調(diào)用自身

%2

::個(gè)人很常用,這里用%1和%2的技巧為我所偏愛(ài),那個(gè)::可以視情況換為rem。雖然此處并未出現(xiàn)cmd命令,但其實(shí)運(yùn)行自身時(shí)執(zhí)行的就是cmd /c %0。

@echo off

%1 cmd /v:on /c %0 ::

set n=123

echo !n!

pause

::綜合前兩個(gè)技巧實(shí)現(xiàn)不使用setlocal,開(kāi)啟變量延遲

@echo off

set str=test測(cè)試1234

setlocal enabledelayedexpansion

for /f "delims=:; " %%a in ('((cmd /u /c echo !str!^)^&echo^;^;^)^|findstr /o ^;') do set /a n=%%a-5

for /f "delims=:" %%a in ('((echo !str!^)^&echo^;^;^)^|findstr /o ^;') do set /a d=n-%%a+3

set /a m=n/2,s=m-d

echo 共!m!個(gè)字符,!d!個(gè)單字節(jié)字符、!s!個(gè)雙字節(jié)字符

pause

::三步判斷單字符、雙字符個(gè)數(shù)的另類辦法。優(yōu)勢(shì)在于支持對(duì)超長(zhǎng)字符串進(jìn)行計(jì)算(此時(shí)用常規(guī)算法步驟多且難通用),缺點(diǎn)在于效率低。

ren 1.exe 1.bat

echo 請(qǐng)雙擊1.bat

::為什么這樣也可以運(yùn)行呢?因?yàn)閑xe的打開(kāi)方式是"%1" %*,bat是cmd /c "%1" %*,所以把exe當(dāng)做bat運(yùn)行時(shí),相當(dāng)于cmd /c 1.exe...不過(guò)這只適合雙擊打開(kāi),在cmd內(nèi)部調(diào)用此文件的時(shí)候是當(dāng)成真正的bat運(yùn)行的,所以會(huì)出錯(cuò)。

五、其他命令篇

1、xcopy比copy強(qiáng)大得多,最大的遺憾在于它是外部命令

xcopy /a 源文件夾 目標(biāo)文件夾

::xcopy用在篩選上也很實(shí)用

xcopy /l /y /n %cd% ..

::巧取當(dāng)前目錄下文件的短名,并不會(huì)真的復(fù)制

xcopy /d:1-31-2011 /l "%cd%" tmp\

::獲取修改日期在2011年1月31日以后的文件清單

xcopy /t *.txt C:\test\

::復(fù)制含有txt文件的目錄結(jié)構(gòu)到C:\test

@echo 1.txt>list

xcopy /exclude:list ?.txt test\

::復(fù)制所有以單個(gè)字符為名的文件到test文件夾

xcopy /s *.txt ..\txt\

::復(fù)制所有以txt為名的子文件到上一級(jí)目錄中的txt文件夾

for /f "delims=" %%a in ('dir /s /b /ad^|sort -r') do rd "%%a" 2>nul

::刪除空文件夾的經(jīng)典思路,利用rd默認(rèn)不刪除非空文件夾的特性進(jìn)序刪除空文件夾

for /d %%a in (*) do (

xcopy /q /h /r /s /k "%%a" "tmp\"

rd /s /q "%%a"

ren "tmp" "%%a"

)

::刪除空文件夾的另類方案

2、相比于前面幾個(gè)大佬級(jí)的命令,這些命令算是比較不起眼的了,所以歸在一類

copy nul+Unicode.bat 解密.bat

::用Unicode文件頭來(lái)進(jìn)行編碼混淆加密的bat,可以用這條命令解密

echo>tmp 12323412 2323242134122434 345

more /t20 tmp>對(duì)齊.txt

type 對(duì)齊.txt

pause

::more命令的t開(kāi)關(guān)也有大用途,潛規(guī)則不解釋。

cmd /u /c echo 0123456789|more

::more命令會(huì)將cmd /u輸出的nul字符轉(zhuǎn)換為空格,從而實(shí)現(xiàn)逐字打印一行單字節(jié)字符。

@echo off&setlocal enabledelayedexpansion

set n=32768

(for %%a in (16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1) do sort /rec !n! %0&&set /a n-=%%a||set /a n+=%%a)>nul 2>nul

echo 最長(zhǎng)行有%n%個(gè)字符

pause

::當(dāng)最長(zhǎng)的行字符數(shù)大于128時(shí)可能可以用這個(gè)來(lái)判斷最長(zhǎng)行的字符數(shù)(短于128時(shí)rec開(kāi)關(guān)會(huì)失效,代碼中那一大堆2的N次方就是湊字?jǐn)?shù)的,實(shí)戰(zhàn)中可以省掉一些),支持超長(zhǎng)字符串,計(jì)算大文件時(shí)效率明顯優(yōu)于傳統(tǒng)算法,新折半法來(lái)自plp626的轉(zhuǎn)帖,sort的/rec開(kāi)關(guān)比較雞肋,想來(lái)想去也只想到這個(gè)用途,未見(jiàn)先例

ren 1.exe 1.bat

echo 請(qǐng)雙擊1.bat

::為什么可以把exe改為bat后綴名運(yùn)行呢?因?yàn)閑xe的打開(kāi)方式是"%1" %*,bat是cmd /c "%1" %*,所以把exe當(dāng)做bat運(yùn)行時(shí),相當(dāng)于cmd /c 1.exe...不過(guò)這只適合雙擊打開(kāi),在cmd內(nèi)部調(diào)用此文件的時(shí)候是當(dāng)成真正的bat運(yùn)行的,所以會(huì)出錯(cuò)。而且基于同樣的原因,它還可以改成com或者cmd后綴名來(lái)執(zhí)行。

3、再介紹一些在cmd窗口中的技巧,當(dāng)然它們僅僅是“欺騙”cmd窗口,一旦輸出到文件就原形畢露:

@echo off

echo 1

echo 2

echo 3

echo 退行了

pause>nul

::這個(gè)太牛了,不知道哪位發(fā)現(xiàn)的

set "dq= "

(echo 2、計(jì)劃生育的重要性%dq%啊

echo 1、貫徹落實(shí)科學(xué)發(fā)展觀%dq%哇)|sort

::借助tab鍵與退格符實(shí)現(xiàn)多行捆綁排序并錯(cuò)行顯示,tab與退格之間的那個(gè)空格是關(guān)鍵,否則變?yōu)橥诵?/P>

set /p=同一行顯示不同顏色:

set /p=紅底藍(lán)字

echo  黃底綠字

findstr /a:41 .* 紅底藍(lán)字?

findstr /a:62 .* 黃底綠字?

del>nul 紅底藍(lán)字 黃底綠字

pause

::經(jīng)常見(jiàn)到的在同一行顯示不同顏色的辦法,不過(guò)很多人總是用    (四個(gè)退格四個(gè)空格),說(shuō)明沒(méi)理解退格鍵的意義

@prompt $_

dir fuck.tmp

pause

::利用這個(gè)prompt,打開(kāi)回顯后可以同時(shí)輸出命令與命令結(jié)果,而不會(huì)有多余內(nèi)容,適合制作bat運(yùn)行日志

echo 

::這個(gè)黑色的圓點(diǎn)在前面的介紹中作為配角出現(xiàn)過(guò),是ansi碼中的0x07,也等同于在cmd中輸入的ctrl+G,它每次被顯示在屏幕上時(shí)都會(huì)發(fā)出“滴”的一聲,所以以后findstr *.*時(shí)一定要留神了(除非不得已,否則需要把結(jié)果顯示到窗口時(shí)建議加上/p開(kāi)關(guān)),萬(wàn)一不小心打印出幾萬(wàn)個(gè),你的電腦會(huì)像發(fā)電報(bào)一樣響個(gè)不停,我中招N次了...

六、cmd運(yùn)行機(jī)制篇

1、預(yù)處理機(jī)制:特殊字符優(yōu)先級(jí)、語(yǔ)句和語(yǔ)塊的劃分

setlocal enabledelayedexpansion

(set n=3

set /a n=2,n=%n%+!n!+n)

::利用預(yù)處理機(jī)制,將一個(gè)變量解釋為多個(gè)值

setlocal enabledelayedexpansion

echo ^^!

::當(dāng)語(yǔ)句中存在變量延遲符號(hào)時(shí),將被預(yù)處理兩次,這是一定要注意的

set str=.

set "str name=str"

for %%a in (%tmp%) do if defined %%a echo %%a 存在變量str

::利用for的參數(shù)變量在if參數(shù)劃分之后才被解釋的特點(diǎn),彌補(bǔ)if defined對(duì)于空格變量名的兼容性缺陷,本質(zhì)原因是for和if都是特殊的函數(shù),他們的參數(shù)設(shè)置在語(yǔ)塊的預(yù)處理中就已經(jīng)被cmd“記住”了,之后無(wú)法對(duì)其進(jìn)行改變。

(del %0

echo 能找到我,就給你發(fā)糖

pause>nul)

::括號(hào)里的內(nèi)容被理解成一個(gè)語(yǔ)塊,運(yùn)行其中的命令時(shí)不需從文件讀取,所以就算刪除自身仍可運(yùn)行。

echo "test&pause|sort

::當(dāng)一行命令中存在奇數(shù)個(gè)雙引號(hào)時(shí),將會(huì)轉(zhuǎn)義其后所有本行字符

for /f tokens^=2delims^=^" %%a in ("123"test"456") do echo %%a

::通過(guò)對(duì)特殊字符的轉(zhuǎn)義,在for中用雙引號(hào)當(dāng)分隔符

for /f tokens^=2delims^=^" %%a in (^"123"456") do echo %%a

set /p=^"""

::當(dāng)一組字符串中含有奇數(shù)個(gè)雙引號(hào)時(shí)經(jīng)常會(huì)出錯(cuò),解決方法是轉(zhuǎn)義其中的一個(gè),保持有效的雙引號(hào)成對(duì),可是引號(hào)對(duì)之內(nèi)無(wú)法用轉(zhuǎn)義符對(duì)其轉(zhuǎn)義,所以轉(zhuǎn)義符要放在引號(hào)對(duì)之外使用

set /a "1/(%random%%%2)"&&set com=||set com=/f "tokens=2"

for %com% %%a in ("123 234 345") do echo %%a

::假如隨機(jī)值為偶數(shù),則顯示指定字符串第二段,否則顯示整段。這里用變量來(lái)定制命令,會(huì)比常規(guī)辦法(一條if和一條命令對(duì)應(yīng))更靈活和省事,但是要注意的是,變量延遲是在解釋語(yǔ)塊之后進(jìn)行,所以這里的%com%不能使用變量延遲。

set /a \test1=123,test2=234

(@echo off

for /f "tokens=1* delims==" %%a in ('set\') do echo %%b

)|sort

::sort對(duì)for命令的輸出進(jìn)行排序,那個(gè)@echo off并非多余,因?yàn)橥ǖ乐暗娜羰钦Z(yǔ)塊(for、if或者被成對(duì)括號(hào)包起來(lái)的語(yǔ)句),該語(yǔ)塊中的內(nèi)容將會(huì)以cmd /c的形式運(yùn)行,此時(shí)的回顯是打開(kāi)的,而變量延遲則是默認(rèn)關(guān)閉的。

dir /ad 123\&&md234||rd 345&tree /f|more

::當(dāng)存在123文件夾時(shí),創(chuàng)建234文件夾,否則刪除345文件夾,無(wú)論結(jié)果如何,接下來(lái)都會(huì)逐屏顯示當(dāng)前目錄樹(shù)。重點(diǎn)是管道命令、邏輯連接符的靈活運(yùn)用

2、句柄的妙用

@echo off 2>nul 3>nul

這個(gè)命令不存在...

echo 錯(cuò)誤回顯呢?

pause

::句柄備份,可用于屏蔽所有正確或錯(cuò)誤回顯

cd.>1.txt 2>2.txt 3>3.txt 4>4.txt 5>5.txt 6>6.txt 7>7.txt 8>8.txt 9>9.txt

::用一個(gè)命令創(chuàng)建9個(gè)文件,效率自然提高了

@echo off

(for /r %%a in (*.*) do del /f /s "%%~nxa" 3>>"%%a") 2>nul 4>>%0

pause

::利用寫(xiě)入句柄會(huì)占用文件的特性實(shí)現(xiàn)高效刪除重復(fù)文件

待續(xù)...

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看腳本欄目
易賢網(wǎng)手機(jī)網(wǎng)站地址:批處理(bat)命令學(xué)習(xí)的一些總結(jié)
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)