linux find命令详解--转
轉(zhuǎn)自:http://blog.csdn.net/jakee304/article/details/1792830
(一)Get Start
最簡(jiǎn)單的find用法莫過(guò)于如此:
$?find?. 查找當(dāng)前目錄下的所有文件。
find命令的一般格式為:
其中,'-H' '-L' '-P'三個(gè)選項(xiàng)主要是用來(lái)處理符號(hào)連接,'-H'表示只跟隨命令行中指定的符號(hào)連接,'-L'表示跟隨所有的符號(hào)連接,'-P'是默認(rèn)的選項(xiàng),表示不跟隨符號(hào)連接。
例如,在我的當(dāng)前目錄下有一個(gè)符號(hào)連接e1000,現(xiàn)在我想查找文件名中最后一個(gè)字母是數(shù)字的源文件,那么
./2234.c
像上面這樣寫(xiě)只能查找出當(dāng)前目錄下符合要求的文件,卻找不出e1000下的文件。因此可以這么寫(xiě):
$?find?-H?e1000?.-name?"*[0-9].c"-print或者使用 '-L'選項(xiàng)
$?find?-L?.-name?"*[0-9].c"-print
格式中的[path...]部分表示以此目錄為根目錄進(jìn)行搜索。
格式中的[expression]是一個(gè)表達(dá)式。最基本的表達(dá)式分為三類(lèi):設(shè)置項(xiàng)(option)、測(cè)試項(xiàng)(test)、動(dòng)作項(xiàng)(action),這三類(lèi)又可以通過(guò)邏輯運(yùn)算符(operator)組合在一起形成更大更復(fù)雜的表達(dá)式。設(shè)置項(xiàng)(如-depth,-maxdepth等)針對(duì)這次查找任務(wù),而不是僅僅針對(duì)某一個(gè)文件,設(shè)置項(xiàng)總是返回true;測(cè)試項(xiàng)(test)則不同,它針對(duì)具體的一個(gè)文件進(jìn)行匹配測(cè)試,如-name,-num,-user等,返回true或者false;動(dòng)作項(xiàng)(action)則是對(duì)某一個(gè)文件進(jìn)行某種動(dòng)作(最常見(jiàn)的如-print),返回true或者false。
正是[expression]部分的豐富,才使得find如此強(qiáng)大。此部分較復(fù)雜,后面慢慢說(shuō)明。
(二)文件名
根據(jù)文件名來(lái)查找一個(gè)文件是大家經(jīng)常遇到的事情,第一節(jié)中的'-name'正是解決此問(wèn)題的。
-name屬于表達(dá)式中的測(cè)試項(xiàng)(test),它按照文件名模式來(lái)匹配文件,若匹配則返回true,否則返回false。最好用引號(hào)將文件名模式引起來(lái),防止shell自己解析要匹配的字符串。(可以用單引號(hào)也可以用雙引號(hào),單引號(hào)和雙引號(hào)在shell環(huán)境中的區(qū)別見(jiàn)后續(xù)部分)
例如,想要的當(dāng)前目錄及子目錄中查找文件名以一個(gè)大寫(xiě)字母開(kāi)頭或者以小寫(xiě)a或b開(kāi)頭的文件,可以用:
./a_book_of_c.chm
./TMP1234
如果想在當(dāng)前目錄查找文件名不以大寫(xiě)字母開(kāi)頭,之后跟一個(gè)小寫(xiě)字母,再之后是兩個(gè)數(shù)字,最后是.txt的文件,可以這么用:
./@y38.txt
注意:此處的模式匹配并不符合正則表達(dá)式。
-name對(duì)大小寫(xiě)字母敏感,如果想匹配時(shí)不考慮大小寫(xiě)可以使用-iname測(cè)試項(xiàng)。'i'可以加在許多選項(xiàng)前面,比如-ipath,-iregex,-iwholename等等,都是表示大小寫(xiě)不敏感。
(三)正則表達(dá)式
使用上面的-name測(cè)試項(xiàng)能解決許多問(wèn)題,但是有些還是不太好辦,比如:查找當(dāng)前目錄下名稱(chēng)全部為數(shù)字的c源代碼文件,這時(shí)就該'-regex'出手了。正則表達(dá)式絕對(duì)值得你去好好研究一下,在unix系統(tǒng)下太有用了,這里不做過(guò)多說(shuō)明,請(qǐng)讀者自行學(xué)習(xí)。
-regex同樣屬于測(cè)試項(xiàng)。使用-regex時(shí)有一點(diǎn)要注意:-regex不是匹配文件名,而是匹配完整的文件名(包括路徑)。例如,當(dāng)前目錄下有一個(gè)文件"abar9",如果你用"ab.*9"來(lái)匹配,將查找不到任何結(jié)果,正確的方法是使用".*ab.*9"或者".*/ab.*9"來(lái)匹配。
針對(duì)上面的那個(gè)查找c代碼的問(wèn)題,可以這么寫(xiě):
./2234.c
還有一個(gè)設(shè)置項(xiàng)(option)'-regextype',可以讓你根據(jù)自己的喜好選擇使用的正則表達(dá)式類(lèi)型,大家可以試試。
(四)wholename與path
既然上一節(jié)提到了完整文件名(包括路徑名),那么這里不妨說(shuō)一下-wholename和-path。
-wholename和-path都屬于測(cè)試項(xiàng)(test),而且功能也一樣。-path從字面上看給人一種錯(cuò)覺(jué),好像只匹配路徑名(或者目錄名),其實(shí)它也可以匹配文件名,因此-wholename這個(gè)名字更貼切一些。
看看這個(gè)例子,當(dāng)前目錄下有一個(gè)phone目錄,phone目錄里有一個(gè)文件名稱(chēng)是puk.txt,使用-path:
./phone/puk.txt
另外要提一點(diǎn):使用-path的一般格式是:find [path ...] -path pattern ...
它的意思是:在[path ...]部分指明的路徑上,使用pattern匹配所有文件的完整文件名;而不是說(shuō)在類(lèi)似的pattern目錄下查找文件。
(五)邏輯運(yùn)算符
有了上面三個(gè)選項(xiàng),你現(xiàn)在應(yīng)該對(duì)文件名的相關(guān)匹配得心應(yīng)手了,對(duì)于不是很復(fù)雜的查找應(yīng)該也勝任了。但是看看這個(gè)例子,解釋一下它在做什么?
下面是當(dāng)前目錄下的所有文件:
total 224
-rw-r--r-- 1 xixi? admin????? 0 2007-11-01 17:34 0dfe.c
-rw-r--r-- 1 abc admin????? 0 2007-10-30 15:56 0s8a.txt
-rw-r--r-- 1?abc?admin????? 0 2007-11-04 01:00 0TMP123
-rw-r--r-- 1?abc?admin???? 73 2007-11-05 15:33 2234.c
-rw-r--r-- 1?abc?admin???? 72 2007-11-05 15:34 3e10.c
-rw------- 1?abc?admin 224017 2006-03-16 12:16 a_book_of_c.chm
lrwxrwxrwx 1?abc?admin???? 15 2007-11-04 11:48 e1000 -> ../e1000-7.6.9/
-rw-r--r-- 1?abc?admin???? 70 2007-11-05 14:57 e100.dat
lrwxrwxrwx 1?abc?admin???? 13 2007-11-05 14:59 e100puk.txt -> phone/puk.txt
-rw-r--r-- 1?abc?admin????? 0 2007-11-06 22:21 e680phone
drwxr-xr-x 2?abc?admin???? 37 2007-11-06 22:24 phone
drwxr-xr-x 2?abc?admin???? 20 2007-11-07 01:07 phone1
drwxr-xr-x 2?abc?admin????? 6 2007-11-05 15:37 phone2
-rw-r--r-- 1?abc?admin???? 67 2007-11-04 12:23 @y38.txt
phone$ ls -l
total 4
-rw-r--r-- 1?abc?admin? 0 2007-11-06 22:24 e680gphone
-rw------- 1?abc?admin 38 2007-11-05 14:58 puk.txt
phone1$ ls -l
total 0
-rw-r--r-- 1 xixi admin 0 2007-11-07 01:07 hello.c
phone2$ ls -l
total 0
要想解決上面的問(wèn)題就得學(xué)習(xí)一下find中的邏輯運(yùn)算符。邏輯運(yùn)算符主要有以下幾個(gè),按照優(yōu)先級(jí)從高到低的順序如下:
?( expr )
?! expr
?-not expr
?expr1 expr2
?expr1 -a expr2
?expr1 -and expr2
?expr1 -o expr2
?expr1 -or expr2
?expr1 , expr2
正是因?yàn)橛幸粋€(gè)求值的順序,所以你才有可能見(jiàn)到這樣的寫(xiě)法:
表示,如果表達(dá)式-name "*.txt"為真,就不再執(zhí)行另一個(gè)表達(dá)式-print,即查找所有不是以.txt結(jié)尾的文件。
再有,要查找當(dāng)前目錄下,文件名中包括字母'e',在'e'之后又有數(shù)字的不是目錄文件的所有文件,可以這么寫(xiě):
./e1000
./e100.dat
./e100puk.txt
./3e10.c
大家可以自己多舉幾個(gè)例子試一下。
(六)-prune
-prune是一個(gè)動(dòng)作項(xiàng),它表示當(dāng)文件是一個(gè)目錄文件時(shí),不進(jìn)入此目錄進(jìn)行搜索。
要理解-prune動(dòng)作,首先得理解find命令的搜索規(guī)則(也可以說(shuō)find命令的算法)。
find命令遞歸遍歷所指定的目錄樹(shù),針對(duì)每個(gè)文件依次執(zhí)行find命令中的表達(dá)式,表達(dá)式首先根據(jù)邏輯運(yùn)算符進(jìn)行結(jié)合,然后依次從左至右對(duì)表達(dá)式求值。以下面代碼為例,進(jìn)行說(shuō)明
(1)?根據(jù)OPT1設(shè)置項(xiàng)進(jìn)行find命令的整體設(shè)置,若沒(méi)有-depth設(shè)置項(xiàng),依次進(jìn)行下面的步驟
(2)?令文件變量File =?PATHP1
(3)?對(duì)File文件進(jìn)行TEST1測(cè)試,若執(zhí)行結(jié)果為false,轉(zhuǎn)(8)
(4)?對(duì)File文件進(jìn)行ACT1動(dòng)作,若執(zhí)行結(jié)果為false,轉(zhuǎn)(8)
(5)?對(duì)File文件進(jìn)行TEST2測(cè)試,若執(zhí)行結(jié)果為true,轉(zhuǎn)(7)
(6)?對(duì)File文件進(jìn)行TEST3測(cè)試,若執(zhí)行結(jié)果為false,轉(zhuǎn)(8)
(7)?對(duì)File文件進(jìn)行ACT2動(dòng)作
(8)?若File文件是一個(gè)目錄,并且沒(méi)有被執(zhí)行過(guò)-prune動(dòng)作,則進(jìn)入此目錄
(9)?當(dāng)前目錄下是否還有文件,若有依次取一個(gè)文件,令File指向此文件,轉(zhuǎn)(3);
(10)?判斷當(dāng)前目錄是否是PATHP1,若是則程序退出;若不是,則返回上一層目錄,轉(zhuǎn)(9)
理解了上面的流程,那么不難理解下面的代碼為什么只輸出一個(gè)'.'
.
再有,當(dāng)前目錄下大于4090字節(jié)的文件有兩個(gè),而大于4096字節(jié)的文件只有一個(gè),如下:
.
./a_book_of_c.chm
$?find?.?-size?+4096c?-print
./a_book_of_c.chm
那么,將上面兩個(gè)-print都替換為-prune,這兩條命令分別輸出什么?
.
$?find?.?-size?+4096c?-prune
./a_book_of_c.chm
這就是答案,如果你答對(duì)了,恭喜你,你已經(jīng)掌握了find命令!
-prune經(jīng)常和-path或-wholename一起使用,以避開(kāi)某個(gè)目錄,常見(jiàn)的形式是:
注意:如果同時(shí)使用-depth設(shè)置項(xiàng),那么-prune將被find命令忽略。man手冊(cè)頁(yè)中這么說(shuō):"If -depth is given, false; no effect."
說(shuō)到這里,又得說(shuō)說(shuō)-depth設(shè)置項(xiàng)。網(wǎng)上好多資料說(shuō)-depth設(shè)置項(xiàng)的功能是“在查找文件時(shí),首先查找當(dāng)前目錄中的文件,然后再在其子目錄中查找”,這明顯是錯(cuò)誤的,man手冊(cè)頁(yè)中如是說(shuō):"-depth Process each directory's? contents before the directory itself."。這有點(diǎn)像樹(shù)的后序遍歷,先遍歷當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn),然后再訪(fǎng)問(wèn)當(dāng)前節(jié)點(diǎn)...
考考你:
下面的命令輸出什么?為什么?
(七)時(shí)間戳
理解了上面幾節(jié),你已經(jīng)掌握了find命令的“道” ^_^ ,下面這幾節(jié)只是介紹一些常用、好用的“招式”。這一節(jié)介紹時(shí)間戳。
文件有三個(gè)時(shí)間屬性:創(chuàng)建時(shí)間、最近修改時(shí)間、最近訪(fǎng)問(wèn)時(shí)間。
最近修改時(shí)間又包括兩種,一是文件的狀態(tài)(也即權(quán)限如rwx等)最近被修改時(shí)間,一是文件的數(shù)據(jù)(也即內(nèi)容)最近被修改時(shí)間。touch命令改變的即是文件數(shù)據(jù)最近被修改時(shí)間。
最近訪(fǎng)問(wèn)時(shí)間,指的是最近一次文件數(shù)據(jù)(內(nèi)容)被訪(fǎng)問(wèn)的時(shí)間。因此,使用ls命令輸出文件的相關(guān)信息并不會(huì)修改文件的最近訪(fǎng)問(wèn)時(shí)間。
find命令提供了針對(duì)文件的最近訪(fǎng)問(wèn)時(shí)間、文件狀態(tài)最近被修改時(shí)間、文件數(shù)據(jù)最近被修改時(shí)間進(jìn)行匹配的測(cè)試項(xiàng),分別是-amin, -cmin, -mmin和-atime, -ctime, -mtime兩組,第一組基于分鐘,第二組基于天。
以-amin為例,假設(shè)當(dāng)前時(shí)間tnow="2007-11-12 14:42:10"、t1="2007-11-12 14:39:10"、t2="2007-11-12 14:40:10",那么要查找最近訪(fǎng)問(wèn)時(shí)間屬于[t1,t2]時(shí)間段的文件,可以這么寫(xiě):
若測(cè)試項(xiàng)參數(shù)是數(shù)字,則基本上都可以在數(shù)字參數(shù)前加"+"或者"-"號(hào),表示“大于”或“小于”的意思,因此,要查找最近訪(fǎng)問(wèn)時(shí)間屬于[t1,tnow]時(shí)間段的文件,可以這么寫(xiě):
"-amin?n"和"-atime?n"的處理方法都是:根據(jù)當(dāng)前時(shí)間和文件的相應(yīng)時(shí)間屬性求n值,然后比較n值和參數(shù)n,看是否符合要求。但是這個(gè)求n值的過(guò)程卻有很大不同,他們的不同也代表了兩組(基于分鐘和基于天)的不同:
"-amin?n"
2、求浮點(diǎn)數(shù)f,用Δt除以1分鐘,f = Δt / 1min;
3、將f的小數(shù)部分入到整數(shù)部分,得到n。即,不管f是6.0102還是6.8901,n都等于7
"-atime?n"
1、求Δt,用當(dāng)前時(shí)間減去文件對(duì)應(yīng)屬性的時(shí)間值即得到Δt,Δt = tnow - tfile;2、求浮點(diǎn)數(shù)f,用Δt處以24小時(shí),f = Δt / 24hours;
3、將f的小數(shù)部分都舍掉,得到n。即,不管f是6.0102還是6.8901,n都等于6
大家可以多做實(shí)驗(yàn),試一下。
(八)權(quán)限位
很多人都在用windows,從windows系統(tǒng)拷過(guò)來(lái)的文件經(jīng)常被加上了可執(zhí)行權(quán)限,比如我現(xiàn)在想把主目錄下所有的后綴名為.txt .pdf .rm并且具有可執(zhí)行權(quán)限位的文件查找出來(lái),該怎么寫(xiě)呢?
這里就不得不說(shuō)一說(shuō)權(quán)限位測(cè)試項(xiàng):-perm。-perm支持符號(hào)權(quán)限位表示法也支持絕對(duì)(八進(jìn)制)權(quán)限位表示法,但是最好使用八進(jìn)制的權(quán)限表示法(這只是個(gè)建議? ^_^ )。
-perm基本上有下面這幾中形式:
-perm?-mode?????All? of the permission bits?modeare set for the file.
-perm?/mode?????Any of the permission bits?modeare set for the file.
-perm?+mode?(此形式已經(jīng)不推薦使用,功能與/mode相同)
好好理解上面藍(lán)色部分,理解了,-perm測(cè)試項(xiàng)也就掌握了。
考考你:
看看下面這句話(huà)是什么意思?
現(xiàn)在再來(lái)解決本節(jié)最開(kāi)始提出的問(wèn)題:查找主目錄下所有的后綴名為.txt .pdf .rm并且具有可執(zhí)行權(quán)限位的文件。
???-not /(?-type?d?-o?-type?l?/)??/
???-perm?/111?-print
(九)文件類(lèi)型
有一個(gè)問(wèn)題:我只想查找符號(hào)連接文件,可是查找結(jié)果中卻包括了普通文件、目錄文件等等,不相關(guān)的東西太多了,怎么把不是符號(hào)連接文件的查找結(jié)果去掉?
-type測(cè)試項(xiàng)剛好可以滿(mǎn)足你的要求,-type c即可,其中c表示文件類(lèi)型,find中支持如下類(lèi)型:
??????????????c??????character?(unbuffered)?special
??????????????d??????directory
??????????????p??????named?pipe?(FIFO)
??????????????f???????regular?file
??????????????l???????symbolic?link;
??????????????s??????socket
??????????????D?????door?(Solaris)
針對(duì)上面的問(wèn)題,可以這么寫(xiě):
./e1000
./e100puk.txt
但是,不要這么寫(xiě):
加上'-L'選項(xiàng)之后,你將查不到需要的東西,除非符號(hào)連接已經(jīng)失效了。
(十)文件大小
前面一再使用-size測(cè)試項(xiàng),這里簡(jiǎn)單介紹一下。
-size測(cè)試項(xiàng)根據(jù)文件的大小查找文件,文件大小既可以用塊(block)來(lái)計(jì)量,也可以用字節(jié)來(lái)計(jì)量。默認(rèn)情況下以塊計(jì)量文件大小,若想使用字節(jié)來(lái)計(jì)量只需要在數(shù)字參數(shù)后加c即可。find支持的其他計(jì)量方式有:
-size n[cwbkMG],分別表示
??????????????‘c’????for?bytes
??????????????‘w’????for?two-byte?words
??????????????‘k’????for?Kilobytes?(units?of?1024?bytes)
??????????????‘M’????for?Megabytes?(units?of?1048576?bytes)
??????????????‘G’????for?Gigabytes?(units?of?1073741824?bytes)
(十一)用戶(hù)、用戶(hù)組
根據(jù)用戶(hù)、用戶(hù)組來(lái)查找文件,這個(gè)沒(méi)有太多要說(shuō)的,記住命令格式即可:
-user?username?or?uid
-nouser
-gid?n
-group?gname?or?gid
-nogroup
(十二)輸出格式
如果你不想查找到你想要的文件事單調(diào)的輸出文件名,你可以使用-printf動(dòng)作項(xiàng)輸出你想要的格式,下面舉幾個(gè)-printf動(dòng)作的參數(shù):
%f?????輸出文件名,不包括路徑名
%m????以8進(jìn)制方式輸出文件的權(quán)限
%g????輸出文件所屬的組
%h????輸出文件所在的目錄名
%u????輸出文件的屬主名
...
例如:
644?./phone1/hello.c?
644?./0dfe.c?
其余的,看man手冊(cè)頁(yè)吧。
(十三)執(zhí)行外部命令
這又是一個(gè)很容易出彩的地方。find真是強(qiáng)大,對(duì)查找到的文件竟然可以調(diào)用外部命令進(jìn)行處理。-exec動(dòng)作項(xiàng)就是來(lái)完成這個(gè)功能的,格式是:
注意:后一個(gè)花括號(hào)'}'和'/'之間有一個(gè)空格。
例如,查找當(dāng)前目錄下的所有普通文件,并用ls命令輸出:
有些操作系統(tǒng)中出于安全考慮只允許-exec選項(xiàng)執(zhí)行諸如l s或ls -l這樣的命令。
也可以使用-exec動(dòng)作項(xiàng)的安全模式:-ok動(dòng)作項(xiàng)。它的功能和語(yǔ)法都跟-exec一樣,只不過(guò)它以更安全的模式運(yùn)行,當(dāng)要?jiǎng)h除文件時(shí),它會(huì)給出提示,讓你選擇到底刪除還是不刪。
例如:
使用-exec動(dòng)作項(xiàng)處理匹配到的文件時(shí),find命令會(huì)將所有匹配到的文件一起傳遞給exec執(zhí)行。但有些系統(tǒng)對(duì)能夠傳遞給exec的命令長(zhǎng)度有限制,這樣在find命令運(yùn)行幾分鐘之后,就會(huì)出現(xiàn)溢出錯(cuò)誤。錯(cuò)誤信息通常是“參數(shù)列太長(zhǎng)”或“參數(shù)列溢出”。這就是xargs命令的用處所在,特別是與find命令一起使用。
xargs的使用格式是:
利用管道,把find命令匹配到的文件名傳遞給xargs命令,而xargs命令每次只獲取一部分文件而不是全部。這樣它可以先處理最先獲取的一部分文件,然后是下一批,并如此繼續(xù)下去。
在有些系統(tǒng)中,使用-exec動(dòng)作項(xiàng)會(huì)為處理每一個(gè)匹配到的文件而發(fā)起一個(gè)相應(yīng)的進(jìn)程,并非將匹配到的文件全部作為參數(shù)一次執(zhí)行;這樣在有些情況下就會(huì)出現(xiàn)進(jìn)程過(guò)多,系統(tǒng)性能下降的問(wèn)題,因而效率不高;而使用xargs命令則只有一個(gè)進(jìn)程。另外,在使用xargs命令時(shí),究竟是一次獲取所有的參數(shù),還是分批取得參數(shù),以及每一次獲取參數(shù)的數(shù)目都會(huì)根據(jù)該命令的選項(xiàng)及系統(tǒng)內(nèi)核中相應(yīng)的可調(diào)參數(shù)來(lái)確定。
例如,要在普通文件中查找文件內(nèi)容中包含"io"的文件,可以這么寫(xiě):
Binary?file?./a_book_of_c.chm?matches
./2234.c:#include?<stdio.h>
./3e10.c:#include?<stdio.h>
find命令配合exec和xargs可以對(duì)所匹配到的文件執(zhí)行幾乎所有的命令。
(十四)總結(jié)
理解并運(yùn)用find,關(guān)鍵是掌握f(shuō)ind命令的處理規(guī)則(見(jiàn)第五節(jié)):遞歸遍歷所指定的目錄樹(shù),針對(duì)每個(gè)文件依次執(zhí)行find命令中的表達(dá)式,表達(dá)式首先根據(jù)邏輯運(yùn)算符進(jìn)行結(jié)合,然后依次從左至右對(duì)表達(dá)式求值。把這個(gè)理解了,需要什么功能查一下man就可以了。
find命令還有好多功能這里沒(méi)有涉及到,具體的大家看man手冊(cè)頁(yè)吧。在任何時(shí)候,man都是一個(gè)極好的幫助工具。?? ^_^
(十五)附
第五節(jié)提出的問(wèn)題,答案如下:
???????? !? /(?-name?"."?-o?-name?"*phone"?/)?-prune??-name?"*.c"?-user?xixi???/
???????? -o?-name?"*phone"
./e1000
./e100.dat
./phone
./phone/e680gphone
./e100puk.txt
./3e10.c
./phone1
./phone1/hello.c
./phone2
./0dfe.c
./e680phone
這篇文章斷斷續(xù)續(xù)寫(xiě)了好久,今天終于基本完工。參考了man手冊(cè)頁(yè)以及一些網(wǎng)上的資料。
要把自己心中所想有條理的寫(xiě)出來(lái)感覺(jué)真是不易,希望對(duì)大家有所幫助。
歡迎批評(píng)指正。
Jakee
2007-11-12
轉(zhuǎn)載于:https://www.cnblogs.com/davidwang456/p/3753707.html
總結(jié)
以上是生活随笔為你收集整理的linux find命令详解--转的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux cat 命令详解--转
- 下一篇: 命令行修改weblogic用户名和密码