AWK命令詳解(大全)
你可能對UNIX比較熟悉,但你可能對awk很陌生,這一點也不奇怪,的確,與其優秀的功能相比,awk還遠沒達到它應有的知名度。awk是什麼?與其它大多數UNIX命令不同的是,從名字上看,我們不可能知道awk的功能:它既不是具有獨立意義的英文單詞,也不是幾個相關單詞的縮寫。事實上,awk是三個人名的縮寫,他們是:Aho、(Peter)Weinberg和(Brain)Kernighan。正是這三個人創造了awk---一個優秀的樣式掃描與處理工具。
AWK的功能是什麼?與sed和grep很相似,awk是一種樣式掃描與處理工具。但其功能卻大大強於sed和grep。awk提供了極其強大的功能:它幾乎可以完成grep和sed所能完成的全部工作,同時,它還可以可以進行樣式裝入、流控制、數學運算子、程序控制語句甚至於內建的變數和函式。它具備了一個完整的語言所應具有的幾乎所有精美特性。實際上,awk的確擁有自己的語言:awk程式設計語言,awk的三位建立者已將它正式定義為:樣式掃描和處理語言。
為什麼使用awk?
即使如此,你也許仍然會問,我為什麼要使用awk?
使用awk的第一個理由是基於文字的樣式掃描和處理是我們經常做的工作,awk所做的工作有些象資料庫,但與資料庫不同的是,它處理的是文字檔案,這些檔案沒有專門的儲存格式,普通的人們就能編輯、閱讀、理解和處理它們。而資料庫檔案往往具有特殊的儲存格式,這使得它們必須用資料庫處理程式來處理它們。既然這種類似於資料庫的處理工作我們經常會遇到,我們就應當找到處理它們的簡便易行的方法,UNIX有很多這方面的工具,例如sed 、grep、sort以及find等等,awk是其中十分優秀的一種。
使用awk的第二個理由是awk是一個簡單的工具,當然這是相對於其強大的功能來說的。的確,UNIX有許多優秀的工具,例如UNIX天然的開發工具C語言及其延續C++就非常的優秀。但相對於它們來說,awk完成同樣的功能要方便和簡捷得多。這首先是因為awk提供了適應多種需要的解決方案:從解決簡單問題的awk命令列到複雜而精巧的awk程式設計語言,這樣做的好處是,你可以不必用複雜的方法去解決本來很簡單的問題。例如,你可以用一個命令列解決簡單的問題,而C不行,即使一個再簡單的程式,C語言也必須經過編寫、編譯的全過程。其次,awk本身是解釋執行的,這就使得awk程式不必經過編譯的過程,同時,這也使得它與shell script程式能夠很好的契合。最後,awk本身較C語言簡單,雖然awk吸收了C語言很多優秀的成分,熟悉C語言會對學習awk有很大的幫助,但awk本身不須要會使用C語言――一種功能強大但需要大量時間學習才能掌握其技巧的開發工具。
使用awk的第三個理由是awk是一個容易獲得的工具。與C和C++語言不同,awk只有一個檔案(/bin/awk),而且幾乎每個版本的UNIX都提供各自版本的awk,你完全不必費心去想如何獲得awk。但C語言卻不是這樣,雖然C語言是UNIX天然的開發工具,但這個開發工具卻是單獨發行的,換言之,你必須為你的UNIX版本的C語言開發工具單獨付費(當然使用D版者除外),獲得並安裝它,然後你才可以使用它。
基於以上理由,再加上awk強大的功能,我們有理由說,如果你要處理與文字樣式掃描相關的工作,awk應該是你的第一選擇。在這裡有一個可遵循的一般原則:如果你用普通的shell工具或shell script有困難的話,試試awk,如果awk仍不能解決問題,則便用C語言,如果C語言仍然失敗,則移至C++。
awk的呼叫方式
前面曾經說過,awk提供了適應多種需要的不同解決方案,它們是:
一、awk命令列,你可以象使用普通UNIX命令一樣使用awk,在命令列中你也可以使用awk程式設計語言,雖然awk支援多行的錄入,但是錄入長長的命令列並保證其正確無誤卻是一件令人頭疼的事,因此,這種方法一般只用於解決簡單的問題。當然,你也可以在shell script程式中引用awk命令列甚至awk程式指令碼。
二、使用-f選項呼叫awk程式。awk允許將一段awk程式寫入一個文字檔案,然後在awk命令列中用-f選項呼叫並執行這段程式。具體的方法我們將在後面的awk語法中講到。
三、利用命令直譯器呼叫awk程式:利用UNIX支援的命令直譯器功能,我們可以將一段awk程式寫入文字檔案,然後在它的第一行加上:
#!/bin/awk -f
並賦予這個文字檔案以執行的許可權。這樣做之後,你就可以在命令列中用類似於下面這樣的方式呼叫並執行這段awk程式了。
$awk指令碼文字名 待處理檔案
awk的語法:
與其它UNIX命令一樣,awk擁有自己的語法:
awk [ -F re] [parameter...] ['prog'] [-f progfile][in_file...]
引數說明:
-F re:允許awk更改其欄位分隔符。
parameter: 該引數幫助為不同的變數賦值。
'prog': awk的程式語句段。這個語句段必須用單拓號:'和'括起,以防被shell解釋。這個程式語句段的標準形式為:
'pattern {action}'
其中pattern引數可以是egrep正則表示式中的任何一個,它可以使用語法/re/再加上一些樣式匹配技巧構成。與sed類似,你也可以使用","分開兩樣式以選擇某個範圍。關於匹配的細節,你可以參考附錄,如果仍不懂的話,找本UNIX書學學grep和sed(本人是在學習ed時掌握匹配技術的)。action引數總是被大括號包圍,它由一系統awk語句組成,各語句之間用";"分隔。awk解釋它們,並在pattern給定的樣式匹配的記錄上執行其操作。與shell類似,你也可以使用“#”作為註釋符,它使“#”到行尾的內容成為註釋,在解釋執行時,它們將被忽略。你可以省略pattern和action之一,但不能兩者同時省略,當省略pattern時沒有樣式匹配,表示對所有行(記錄)均執行操作,省略action時執行預設的操作――在標準輸出上顯示。
-f progfile:允許awk呼叫並執行progfile指定有程式檔案。progfile是一個文字檔案,他必須符合awk的語法。
in_file:awk的輸入檔案,awk允許對多個輸入檔案進行處理。值得注意的是awk不修改輸入檔案。如果未指定輸入檔案,awk將接受標準輸入,並將結果顯示在標準輸出上。awk支援輸入輸出重定向。
awk的記錄、欄位與內建變數:
前面說過,awk處理的工作與資料庫的處理方式有相同之處,其相同處之一就是awk支援對記錄和欄位的處理,其中對欄位的處理是grep和sed不能實現的,這也是awk優於二者的原因之一。在awk中,預設的情況下總是將文字檔案中的一行視為一個記錄,而將一行中的某一部分作為記錄中的一個欄位。為了操作這些不同的欄位,awk借用shell的方法,用$1,$2,$3...這樣的方式來順序地表示行(記錄)中的不同欄位。特殊地,awk用$0表示整個行(記錄)。不同的欄位之間是用稱作分隔符的字元分隔開的。系統預設的分隔符是空格。awk允許在命令列中用-F re的形式來改變這個分隔符。事實上,awk用一個內建的變數FS來記憶這個分隔符。awk中有好幾個這樣的內建變數,例如,記錄分隔符變數RS、當前工作的記錄數NR等等,本文後面的附表列出了全部的內建變數。這些內建的變數可以在awk程式中引用或修改,例如,你可以利用NR變數在模式匹配中指定工作範圍,也可以通過修改記錄分隔符RS讓一個特殊字元而不是換行符作為記錄的分隔符。
例:顯示文字檔案myfile中第七行到第十五行中以字元%分隔的第一欄位,第三欄位和第七欄位:
awk -F % 'NR==7,NR==15 {printf $1 $3 $7}'
awk的內建函式
awk之所以成為一種優秀的程式設計語言的原因之一是它吸收了某些優秀的程式設計語言(例如C)語言的許多優點。這些優點之一就是內建函式的使用,awk定義並支援了一系列的內建函式,由於這些函式的使用,使得awk提供的功能更為完善和強大,例如,awk使用了一系列的字串處理內建函式(這些函式看起來與C語言的字串處理函式相似,其使用方式與C語言中的函式也相差無幾),正是由於這些內建函式的使用,使awk處理字串的功能更加強大。本文後面的附錄中列有一般的awk所提供的內建函式,這些內建函式也許與你的awk版本有些出入,因此,在使用之前,最好參考一下你的系統中的聯機幫助。
作為內建函式的一個例子,我們將在這裡介紹awk的printf函式,這個函式使得awk與c語言的輸出相一致。實際上,awk中有許多引用形式都是從C語言借用過來的。如果你熟悉C語言,你也許會記得其中的printf函式,它提供的強大格式輸出功能曾經帶我們許多的方便。幸運的是,我們在awk中又和它重逢了。awk中printf幾乎與C語言中一模一樣,如果你熟悉C語言的話,你完全可以照C語言的模式使用awk中的printf。因此在這裡,我們只給出一個例子,如果你不熟悉的話,請隨便找一本C語言的入門書翻翻。
例:顯示檔案myfile中的行號和第3欄位:
$awk '{printf"%03d%s",NR,$1}' myfile
在命令列使用awk
按照順序,我們應當講解awk程式設計的內容了,但在講解之前,我們將用一些例子來對前面的知識進行回顧,這些例子都是在命令列中使用的,由此我們可以知道在命令列中使用awk是多麼的方便。這樣做的原因一方面是為下面的內容作鋪墊,另一方面是介紹一些解決簡單問題的方法,我們完全沒有必要用複雜的方法來解決簡單的問題----既然awk提供了較為簡單的方法的話。
例:顯示文字檔案mydoc匹配(含有)字串"sun"的所有行。
$awk '/sun/{print}' mydoc
由於顯示整個記錄(全行)是awk的預設動作,因此可以省略action項。
$awk '/sun/' mydoc
例:下面是一個較為複雜的匹配的示例:
$awk '/[Ss]un/,/[Mm]oon/ {print}' myfile
它將顯示第一個匹配Sun或sun的行與第一個匹配Moon或moon的行之間的行,並顯示到標準輸出上。
例:下面的示例顯示了內建變數和內建函式length()的使用:
$awk 'length($0)>80 {print NR}' myfile
該命令列將顯示文字myfile中所有超過80個字元的行號,在這裡,用$0表示整個記錄(行),同時,內建變數NR不使用標誌符'$'。
例:作為一個較為實際的例子,我們假設要對UNIX中的使用者進行安全性檢查,方法是考察/etc下的passwd檔案,檢查其中的passwd欄位(第二欄位)是否為"*",如不為"*",則表示該使用者沒有設定密碼,顯示出這些使用者名稱(第一欄位)。我們可以用如下語句實現:
#awk -F: '$2=="" {printf("%s no password!",$1' /etc/passwd
在這個示例中,passwd檔案的欄位分隔符是“:”,因此,必須用-F:來更改預設的欄位分隔符,這個示例中也涉及到了內建函式printf的使用。
awk的變數
如同其它程式設計語言一樣,awk允許在程式語言中設定變數,事實上,提供變數的功能是程式設計語言的其本要求,不提供變數的程式設計語言本人還從未見過。
awk提供兩種變數,一種是awk內建的變數,這前面我們已經講過,需要著重指出的是,與後面提到的其它變數不同的是,在awk程式中引用內建變數不需要使用標誌符"$"(回憶一下前面講過的NR的使用)。awk提供的另一種變數是自定義變數。awk允許使用者在awk程式語句中定義並呼叫自已的變數。當然這種變數不能與內建變數及其它awk保留字相同,在awk中引用自定義變數必須在它前面加上標誌符"$"。與C語言不同的是,awk中不需要對變數進行初始化,awk根據其在awk中第一次出現的形式和上下文確定其具體的資料型別。當變數型別不確定時,awk預設其為字串型別。這裡有一個技巧:如果你要讓你的awk程式知道你所使用的變數的明確型別,你應當在在程式中給它賦初值。在後面的例項中,我們將用到這一技巧。
運算與判斷:
作為一種程式設計語言所應具有的特點之一,awk支援多種運算,這些運算與C語言提供的幾本相同:如+、-、*、/、%等等,同時,awk也支援C語言中類似++、--、+=、-=、=+、=-之類的功能,這給熟悉C語言的使用者編寫awk程式帶來了極大的方便。作為對運算功能的一種擴充套件,awk還提供了一系列內建的運算函式(如log、sqr、cos、sin等等)和一些用於對字串進行操作(運算)的函式(如length、substr等等)。這些函式的引用大大的提高了awk的運算功能。
作為對條件轉移指令的一部分,關係判斷是每種程式設計語言都具備的功能,awk也不例外。awk中允許進行多種測試,如常用的==(等於)、!=(不等於)、>(大於)、<(小於)、>=(大於等於)、>=(小於等於)等等,同時,作為樣式匹配,還提供了~(匹配於)和!~(不匹配於)判斷。
作為對測試的一種擴充,awk也支援用邏輯運算子:!(非)、&&(與)、||(或)和括號()進行多重判斷,這大大增強了awk的功能。本文的附錄中列出了awk所允許的運算、判斷以及操作符的優先順序。
awk的流程控制
流程控制語句是任何程式設計語言都不能缺少的部分。任何好的語言都有一些執行流程控制的語句。awk提供的完備的流程控制語句類似於C語言,這給我們程式設計帶來了極大的方便。
1、BEGIN和END:
在awk中兩個特別的表示式,BEGIN和END,這兩者都可用於pattern中(參考前面的awk語法),提供BEGIN和END的作用是給程式賦予初始狀態和在程式結束之後執行一些掃尾的工作。任何在BEGIN之後列出的操作(在{}內)將在awk開始掃描輸入之前執行,而END之後列出的操作將在掃描完全部的輸入之後執行。因此,通常使用BEGIN來顯示變數和預置(初始化)變數,使用END來輸出最終結果。
例:累計銷售檔案xs中的銷售金額(假設銷售金額在記錄的第三欄位):
$awk
>'BEGIN { FS=":";print "統計銷售金額";total=0}
>{print $3;total=total+$3;}
>END {printf "銷售金額總計:%.2f",total}' sx
(注:>是shell提供的第二提示符,如要在shell程式awk語句和awk語言中換行,則需在行尾加反斜槓)
在這裡,BEGIN預置了內部變數FS(欄位分隔符)和自定義變數total,同時在掃描之前顯示出輸出行頭。而END則在掃描完成後打印出總合計。
2、流程控制語句
awk提供了完備的流程控制語句,其用法與C語言類似。下面我們一一加以說明:
2.1、if...else語句:
格式:
if(表示式)
語句1
else
語句2
格式中"語句1"可以是多個語句,如果你為了方便awk判斷也方便你自已閱讀,你最好將多個語句用{}括起來。awk分枝結構允許巢狀,其格式為:
if(表示式1)
{if(表示式2)
語句1
else
語句2
}
語句3
else {if(表示式3)
語句4
else
語句5
}
語句6
當然實際操作過程中你可能不會用到如此複雜的分枝結構,這裡只是為了給出其樣式罷了。
2.2、while語句
格式為:
while(表示式)
語句
2.3、do-while語句
格式為:
do
{
語句
}while(條件判斷語句)
2.4、for語句
格式為:
for(初始表示式;終止條件;步長表示式)
{語句}
在awk的 while、do-while和for語句中允許使用break,continue語句來控制流程走向,也允許使用exit這樣的語句來退出。break中斷當前正在執行的迴圈並跳到迴圈外執行下一條語句。continue從當前位置跳到迴圈開始處執行。對於exit的執行有兩種情況:當exit語句不在END中時,任何操作中的exit命令表現得如同到了檔案尾,所有模式或操作執行將停止,END模式中的操作被執行。而出現在END中的exit將導致程式終止。
例:為了
awk中的自定義函式
定義和呼叫使用者自己的函式是幾乎每個高階語言都具有的功能,awk也不例外,但原始的awk並不提供函式功能,只有在nawk或較新的awk版本中才可以增加函式。
函式的使用包含兩部分:函式的定義與函式呼叫。其中函式定義又包括要執行的程式碼(函式本身)和從主程式程式碼傳遞到該函式的臨時呼叫。
awk函式的定義方法如下:
function 函式名(引數表){
函式體
}
在gawk中允許將function省略為func,但其它版本的awk不允許。函式名必須是一個合法的標誌符,引數表中可以不提供引數(但在呼叫函式時函式名後的一對括號仍然是不可缺少的),也可以提供一個或多個引數。與C語言相似,awk的引數也是通過值來傳遞的。
在awk中呼叫函式比較簡單,其方法與C語言相似,但awk比C語言更為靈活,它不執行引數有效性檢查。換句話說,在你呼叫函式時,可以列出比函式預計(函式定義中規定)的多或少的引數,多餘的引數會被awk所忽略,而不足的引數,awk將它們置為預設值0或空字串,具體置為何值,將取決於引數的使用方式。
awk函式有兩種返回方式:隱式返回和顯式返回。當awk執行到函式的結尾時,它自動地返回到呼叫程式,這是函式是隱式返回的。如果需要在結束之前退出函式,可以明確地使用返回語句提前退出。方法是在函式中使用形如:return 返回值 格式的語句。
例:下面的例子演示了函式的使用。在這個示例中,定義了一個名為print_header的函式,該函式呼叫了兩個引數FileName和PageNum,FileName引數傳給函式當前使用的檔名,PageNum引數是當前頁的頁號。這個函式的功能是列印(顯示)出當前檔案的檔名,和當前頁的頁號。完成這個功能後,這個函式將返回下一頁的頁號。
nawk
>'BEGIN{pageno=1;file=FILENAME
>pageno=print_header(file,pageno);#呼叫函式print_header
>printf("當前頁頁號是:%d",pageno);
>}
>#定義函式print_header
>function print_header(FileName,PageNum){
>printf("%s %d",FileName,PageNum); >PageNum++;return PageNUm;
>}
>}' myfile
執行這個程式將顯示如下內容:
myfile 1
當前頁頁號是:2
awk高階輸入輸出
1.讀取下一條記錄:
awk的next語句導致awk讀取下一個記錄並完成模式匹配,然後立即執行相應的操作。通常它用匹配的模式執行操作中的程式碼。next導致這個記錄的任何額外匹配模式被忽略。
2.簡單地讀取一條記錄
awk的 getline語句用於簡單地讀取一條記錄。如果使用者有一個數據記錄類似兩個物理記錄,那麼getline將尤其有用。它完成一般欄位的分離(設定欄位變數$0 FNR NF NR)。如果成功則返回1,失敗則返回0(到達檔案尾)。如果需簡單地讀取一個檔案,則可以編寫以下程式碼:
例:示例getline的使用
{while(getline==1)
{
#process the inputted fields
}
}
也可以使getline儲存輸入資料在一個欄位中,而不是通過使用getline variable的形式處理一般欄位。當使用這種方式時,NF被置成0,FNR和NR被增值。
使用者也可以使用getline<"filename"方式從一個給定的檔案中輸入資料,而不是從命令列所列內容輸入資料。此時,getline將完成一般欄位分離(設定欄位變數$0和NF)。如果檔案不存在,返回-1,成功,返回1,返回0表示失敗。使用者可以從給定檔案中讀取資料到一個變數中,也可以用stdin(標準輸入裝置)或一個包含這個檔名的變數代替filename。值得注意的是當使用這種方式時不修改FNR和NR。
另一種使用getline語句的方法是從UNIX命令接受輸入,例如下面的例子:
例:示例從UNIX命令接受輸入
{while("who -u"|getline)
{
#process each line from the who command
}
}
當然,也可以使用如下形式:
"command" | getline variable
3.關閉檔案:
awk中允許在程式中關閉一個輸入或輸出檔案,方法是使用awk的close語句。
close("filename")
filename可以是getline開啟的檔案(也可以是stdin,包含檔名的變數或者getline使用的確切命令)。或一個輸出檔案(可以是stdout,包含檔名的變數或使用管道的確切命令)。
4.輸出到一個檔案:
awk中允許用如下方式將結果輸出到一個檔案:
printf("hello word!")>"datafile"
或
printf("hello word!")>>"datafile"
5.輸出到一個命令
awk中允許用如下方式將結果輸出到一個命令:
printf("hello word!")|"sort-t','"
相關推薦
AWK命令詳解(大全)
什麼是awk? 你可能對UNIX比較熟悉,但你可能對awk很陌生,這一點也不奇怪,的確,與其優秀的功能相比,awk還遠沒達到它應有的知名度。awk是什麼?與其它大多數UNIX命令不同的是,從名字上看,我們不可能知道awk的功能:它既不是具有獨立意義的英文單詞,也不是幾個相關
awk命令詳解(二)
第一篇的連結:Linux awk命令總結(一) 1. 處理陣列 為了在單個變數中儲存多個值,許多程式語言都提供了陣列,在awk中使用關聯陣列提供陣列的功能。 關聯陣列類似於散列表和字典,索引值可以是任意的文字字串,對索引的唯一要求是每個索引字串都能夠唯一的對應賦值給它的資料元素。 (
linux awk命令詳解(一) awk語法 awk運算 awk陣列
如何把一行豎排的資料轉換成橫排? awk '{printf("%s,",$1)}' filename awk中使用NR和FNR的一些例子 http://blog.sina.com.cn/s/blog_5a3640220100b7c8.html http://www.linuxidc.com/Linux
linux awk命令詳解(轉載)
簡介 awk是一個強大的文字分析工具,相對於grep的查詢,sed的編輯,awk在其對資料分析並生成報告時,顯得尤為強大。簡單來說awk就是把檔案逐行的讀入,以空格為預設分隔符將每行切片,切開的部分再進行各種分析處理。 awk有3個不同版本: awk、nawk和gaw
Linux 命令詳解(十)Shell腳本的數組詳解
cti err art case lin start shell pre round 1、數組定義 [[email protected] ~]# a=(1 2 3 4 5 6 7 8) [[email protected]-IDC ~]# echo $
網工最實用最常用的網絡命令之一——Ping 命令詳解(一)
關閉 連通 自己 命令詳解 機房 幫助 辦公室 技術分享 詳解 Ping是Windows、Unix和Linux系統下的一個命令。ping也屬於一個通信協議,是TCP/IP協議的一部分。利用“ping”命令可以檢查網絡是否連通,可以很好地幫助我們分析和判定網絡故障。 網工最實
Linux 文本對比 diff 命令詳解(整理)
targe def -h 改變 windows 全部 的人 方便 匹配 diff 命令詳解 1.概述 windows系統下面就有不錯的文本對比工具可以使用,例如常用的Beyond Compare,WinMerge都是圖形界面的比較工具而且使用非常方便,如果你僅僅是在
MYSQL-EXPLAIN 命令詳解 (轉載)
test cacheable sel exp 打開慢 一起 select語句 方式 命令詳解 在工作中,我們用於捕捉性能問題最常用的就是打開慢查詢,定位執行效率差的SQL,那麽當我們定位到一個SQL以後還不算完事,我們還需要知道該SQL的執行計劃,比如是全表掃描,還是索引掃
Linux下的tar壓縮解壓縮命令詳解(轉)
壓縮歸檔 增加 all log 參數 -c 內容 net logo tar -c: 建立壓縮檔案-x:解壓-t:查看內容-r:向壓縮歸檔文件末尾追加文件-u:更新原壓縮包中的文件 這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。下面的參數是
crontab 命令詳解(筆記)
# crontab 詳解https://www.cnblogs.com/intval/p/5763929.html */1 * * * * /bin/sh /server/scripts/echo.sh 前面一共有5 個* 號,每個*號各表示不同的意思 第一位代表 分鐘
linux free命令詳解(一)
一. 作用 free命令可以顯示當前系統未使用的和已使用的記憶體數目,還可以顯示被核心使用的記憶體緩衝區。 二. 語法 free [選項] 三. 選項 預設情況下,即在沒有選項的情況下,"free"命令顯示記憶體的使用資訊。預設
Git 常用命令詳解(轉)
一、 Git 命令初識 在正式介紹Git命令之前,先介紹一下Git 的基本命令和操作,對Git命令有一個總體的認識 示例:從Git 版本庫的初始化,通常有兩種方式: 1)git clone:這是一種較為簡單的初始化方式,當你已經
OpenSSL 命令詳解(二)——摘要演算法、簽名、驗籤
鋒影 email:[email protected] 如果你認為本系列文章對你有所幫助,請大家有錢的捧個錢場,點選此處贊助,贊助額0.1元起步,多少隨意 用什麼摘要演算法指令代替時,預設使用該演算法,但也可以指定其他演算法。 使用指令
Tracert 命令詳解(圖文)
5、tracert命令... Tracert工作原理... 不帶選項... -d選項... -h選項... -w選項... 5、tracert命令 Tracert是路由跟蹤程式,用於確定 IP 資料報訪問目標所經過的路徑。Tracert 命令用 IP
ls -l命令詳解(轉)
ls -l 列表資訊詳解 我們平時用ls -l 命令檢視一個目錄下的檔案和子目錄的詳悉資訊時,會得到一個詳細的檔案和目錄名列表.這個列表包含了檔案的屬性,所屬使用者,所屬組,建立時間,檔案大小等等資訊.這些資訊到底是什麼意思呢?有很多初學者對這些不太瞭解,因此想詳悉
linux的ls命令詳解(三)(幾種常用的ls選項排序命令)
上一章提到了-s(小寫)選項,其實還有-S(大寫)選項,並且這兩個選項的用法是有所不同的,大寫-S選項其實就是小寫-s的加強版--排序版: 讓我們把這兩個選項對比一下: ls -a -s 總用量 18044 0 .
第04課:GDB常用命令詳解(上)
本課的核心內容如下: run命令 continue命令 break命令 backtrace與frame命令 info break、enable、disable和delete命令 list命令 print和ptype命令 為了結合實踐,這裡以除錯Redis原始碼為例來
OpenSSL命令詳解(一)——標準命令
OpenSSL命令分為以下3個部分。 標準命令Standard commands 1. asn1parse: asn1parse用於解釋用ANS.1語法書寫的語句(ASN一般用於定義語法的構成) 演示命令操作順序:4 -> 5
Linux常用命令詳解(一)--技術流ken
本節內容 基礎命令:lsmanpwdcdmkdirechotouchcpmvrmrmdircatmorelessheadtailclearpoweroffreboot進階命令(下一章節):aliasunaliasunamesuhostnamehistorywhichwcwwh
Linux常用命令詳解(二)--技術流ken
本節內容 aliasunaliasunamesuhostnamehistorywhichwcwwhowhoamipingkillseqdudffreedate 命令詳解 1. alias 設定、’檢視別名 例項1:檢視別名 [[email