文本處理三劍客之grep

文本處理三劍客之grep


  • 正則表達式(regex)

  • 文本處理工具

  • grep

  • egrep


試驗環境:CentOS 7.2

正則表達式

Linux的哲學之一“一切皆文件”,學習Linux應得掌握其基本的文本處理工具,這些工具主要包括:

文件內容:less和cat 文件截?。篽ead和tail
文件抽取:cut
關鍵字搜索:grep

正則表達式是計算機科學中的一個概念,又稱作regexRE,

正則表達式誕生于對神經網絡研究的需要,隨著技術發展,正則表達式已經廣泛應用于各個領域,其主要應用對象是文本。正則就是常規,正規的意思,由一些普通
字符與元字符(metacharacters)組成,普通字符包括大小寫字母和數字,而元字符則具有其特殊的含義,表示控制或通配的功能。

在Linux中,支持正則表達式的程序有:grep, vim, less, nginx等,有兩種類型:

基本正則表達式:BRE擴展正則表達式:ERE

元字符分類:字符匹配、匹配次數,位置錨定、分組

元字符簡介表

元字符 定義
\ 字符標識符,后向引用,轉義符
^ 匹配字符串的開始位置
$ 匹配字符串的結束位置
. 匹配任意單個字符
* 貪婪模式,盡可能長的匹配,匹配前面的子表達式任意次
.* 匹配任意長度的任意單個字符
+ 匹配前面的子表達式1次或多次(大于等于1)
? 匹配前面的子表達式0次或1次
{n} 匹配確定的n次
{n,} 至少匹配n次
{n,m} 至少匹配n次,最多匹配m次
? 非貪婪模式,盡可以少地匹配所搜索到的字符串
(pattern) 匹配并獲取pattern
[xyz] 字符集合,匹配所包含的任意字符
[^xyz] 負值字符集合,匹配未包含的任意字符
[a-z] 字符范圍集合,匹配指定范圍內的任意字符
[^a-z] 負值字符范圍集合,匹配任何不在范圍內的任意字符
\b 位置匹配,匹配一個單詞邊界,指單詞與空格間的位置
\f 換頁符
\n 換行符
\r 回車符
\t 制表符
\v 垂直制表符
\s 匹配任何一個不可見字符,包括空格,制表符等,等價于[\f\n\r\t\v]
\S 匹配任何可見字符,等價于[^\f\n\r\t\v]
\w 匹配下劃線在內的任何單詞字符,“單詞”使用Unicode字符集
\W 匹配任何非單詞字符
\num 引用匹配,num為一個正整數,如'(.)\1'匹配兩個連續的相同字符
< > 匹配詞的開始和結束
( ) 將括號內的表達式定義為組(group),并且被正則表達式記錄在內部的 變量中,可以被\1到\9的符號來引用
+ 匹配1個或多個恰好在它前面的那個字符
{i}{i,j} 匹配指定數目的字符,這些字符是在它前面的表達式定義的

另外,| 表示一個邏輯或運算!

元字符 定義
[:alpha:] 所有字母,包括大小寫
[:alnum:] 所有字母和數字
[:upper:] 所有大寫字母
[:lower:] 所有小寫字母
[:digit:] 所有數字
[:punct:] 所有標點符號
[: space:] 空格和Tab

文本查看命令:cat, tac, rev

cat - concatenate files and print on the standard outputcat [OPTION]... [FILE]...

tac - concatenate and print files in reversetac [OPTION]... [FILE]...

rev - reverse lines of a file or filesrev [options] [file ...]

cat

  1. -E: 顯示行結束符$

  2. -n: 對顯示出的每一行進行編號

  3. -A: 顯示所有控制符

  4. -b: 非空行編號

  5. -s: 壓縮連續的空行成一行

文本處理三劍客之grep哈哈,簡潔點!

分頁查看文件內容:more, less

more [options] file [...]

-d: 顯示翻頁及退出標致

less: 一頁一頁地查看文件或STDIN輸出
    查看時有用的命令包括:
        /文本     表示搜索文本
        ?文本     表示搜索文本        
        n/N 跳到下一個或上一個匹配
        
        less命令是man命令使用的分頁器

顯示文本前或后行的內容:head, tail

head

head - output the first part of fileshead [OPTION]... [FILE]...

-c #: 指定獲取前#字節
-n #: 指定獲取前n行
-#: 指定行數

tail

tail - output the last part of files
tail [OPTION]... [FILE]...

-c #: 指定獲取后#字節
-n #: 指定獲取后n行;
-n +K: 表示從第K行開始輸出
-#: 指定行數
-f: 跟蹤顯示文件新追加的內容,常用日志監控

上述命令就不單獨舉例了 文本處理三劍客之grep

按列抽取文件cut與合并文件paste

cut

主要用途

顯示或刪除文本中的指定字段

cut
命令可以顯示和刪除文本中的指定字段或部分,將得到的內容輸出到標準輸出上,注意,cut有一個重要的特性,就是按列截取與顯示;另外,cut還有連接兩
個和多個文件的作用,如cut f1 f2 > f3 將把文件f1和f2的內容合并起來,然后通過重定向符 >
的作用將它們放入到文件f3中。

常用參數

  1. -b: –bytes=LIST, 僅顯示行中指定范圍內的內容

  2. -c: –characters=LIST, 僅顯示行中指定范圍內的字符

  3. -d: –delimiter=DELIM, 指定字段的分隔符,默認的分隔符為‘TAB'

  4. -n: 與-b連用,不分割多字節字符

  5. –output-delimiter=STRING: 指定輸出分割符

  6. -f: –fields=LIST,顯示指定字段的內容

    #: 第#個字段
         #,#[,#]: 離散的多個字段,如1,3,7
         #-#:連續的多個字段
         混合使用:如1-3,7

使用示例

[root@localhost ~]# cat file1
num char
1    a 
2    b
3    c
[root@localhost ~]# cat file2
Name       Gen
liansir    man  
xiaolei    girl
[root@localhost ~]# 
[root@localhost ~]# cut -c1-3 file2  # 打印第1到第3個字符Nam
lia
xia
[root@localhost ~]# cut -b1-2 file1 # 打印批1到第2個字節 
nu
1 
2 
3 
[root@localhost ~]
[root@localhost ~]# head -5 /etc/passwd > passwd.min
[root@localhost ~]# cat passwd.min 
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[root@localhost ~]#

截取出passwd.min中的shell類型:

[root@localhost ~]# cut -d: -f7 passwd.min   # 指定某一具體字段
/bin/bash
/sbin/nologin
/sbin/nologin
/sbin/nologin
/sbin/nologin
[root@localhost ~]#

截取出用戶名,uid與注釋信息:

[root@localhost ~]# cut -d: -f1,3,5 passwd.min  # 離散的多個字段
root:0:root
bin:1:bin
daemon:2:daemon
adm:3:adm
lp:4:lp
[root@localhost ~]#

截取出uid與家目錄之間的字段,并指輸出分隔符為#:

[root@localhost ~]# cut -d: -f3-6 --output-delimiter=# passwd.min  # 連續字段
0#0#root#/root
1#1#bin#/bin
2#2#daemon#/sbin
3#4#adm#/var/adm
4#7#lp#/var/spool/lpd
[root@localhost ~]#

paste

主要用途

合并兩個文件同行號的列到一行

paste - merge lines of files
paste [OPTION]... [FILE]...

常用參數

  1. -d: –delimiters=LIST, 指定分隔符,默認用TAB.

  2. -s: 所有行合成一行顯示

    paste f1 f2
    paste -s f1 f2

使用示例

[root@localhost ~]# paste file1 file2  # 合并兩個文件同行號的列到一行
num char        Name       Gen
1    a  liansir    man  
2    b  xiaolei    girl
3    c
[root@localhost ~]# paste -s file1 file2  # 合成一行顯示
num char        1    a  2    b  3    c
Name       Gen  liansir    man          xiaolei    girl
[root@localhost ~]#

分析文本的工具:wc, diff, patch, sort, uniq

wc

主要用途

文本數據統計

wc - print newline, word, and byte counts for each filewc [OPTION]... [FILE]...

wc命令用來文本的數據統計,可以計算文本的Byte數、字數和列數。

常用參數

  1. -c: –bytes, –chars,字節總數

  2. -m: –chars,字符總數

  3. -l: –lines,行數

  4. -w: –words,單詞總數

使用示例

[root@localhost ~]# cat file1
num char
1    a 
2    b
3    c
[root@localhost ~]# wc file1
 4  8 31 file1
[root@localhost ~]# wc -l file1
4 file1
[root@localhost ~]# wc -c file1
31 file1
[root@localhost ~]# wc -m file1
31 file1
[root@localhost ~]# wc -w file1
8 file1
[root@localhost ~]#

diff

主要用途

比較文本

diff - compare files line by line
diff [OPTION]... FILES

diff
一般就是用來比較兩個給定的文本的異同,且以逐行的方式(line by line)
進行掃描;如果該命令是用來比較目錄,則會比較兩個目錄中具有相同文件名的文件,且不會對其子目錄文件進行任何比較。另外,diff命令的輸出被保存在一
個叫“補丁”的文件中,使用 -u 選項來輸出“統一的(unified) diff格式文件,最適用于補丁文件。

常用參數

  1. -y: 以并列的方式顯示文件的異同之外

  2. -q: 僅顯示有無差異,不顯示詳細信息

  3. -u: 以統一合并的方式來顯示文件的不同

使用示例

看這兩個文件:

wKiom1emBe-AU9C-AAA-TpW5O1g462.png

看看兩個文件有何異同:

[root@localhost ~]# diff file2 file3

wKioL1emBiPwi6xYAAAz8DwPwWI685.png

[root@localhost ~]# diff -q file2 file3
Files file2 and file3 differ
[root@localhost ~]# 
[root@localhost ~]# diff -y file2 file3 
Name       Gen                                                  Name       Gen
liansir    man                                                | 1iansir    man  
xiaolei    girl                                               | xia0lei    gir1
[root@localhost ~]# 
[root@localhost ~]# diff -u file2 file3 
--- file2       2016-08-06 05:06:59.809254741 -0400
+++ file3       2016-08-06 07:03:22.579524822 -0400
@@ -1,3 +1,3 @@
 Name       Gen
-liansir    man  
-xiaolei    girl
+1iansir    man  
+xia0lei    gir1
[root@localhost ~]#

patch

主要用途

備份與安裝補丁程序

patch - apply changes to files
patch [-blNR][ -c| -e| -n][-d dir][-D define][-i patchfile]           
[-o outfile][-p num][-r rejectfile][file]

patch命令可以為開放源代碼程序安裝補丁,一般情況下,修改一個或少量文件可下達指令依序執行,如果配合修補文件的方式則能一次修補大批文件,這是Linux系統一項重要的升級方法。

常用參數

  1. -b: –backup, 備份每一個原始文件

  2. –binary: 以二進制模式讀取數據,而不通過標準輸出設備

  3. -u: 可將文件一差異存到其他文件中

使用示例

說明:patch這個命令在CentOS 7.2上能夠man 出來,但運行時找不到命令,在CentOS 6.8上無此情況

[root@centos6 ~]# diff -u f1 f2 > f1f2.diff     # -u將不同重定向到其他文件
[root@centos6 ~]# patch -b f1 f1f2.diff # -b選項是備份f1
[root@centos6 ~]#[root@centos6 ~]# ll f*       
-rw-r--r--. 1 root root  22 Aug  6 20:40 f1
-rw-r--r--. 1 root root   0 Aug  6 20:42 f1f2.diff
-rw-r--r--. 1 root root 845 Aug  5 14:28 f1.orig # 自動生成的
-rw-r--r--. 1 root root  22 Aug  6 20:40 f2
[root@centos6 ~]#

說明:如果f2丟了,可以使用f1與f1f2.diff找回f2,但是,如果在patch時沒有-b,則將f1和f1f2.diff恢復f2后,會覆蓋原來的f1,故這里使用-b達到同時備份f1的效果。

練習一

1、找出ifconfig命令結果中本機的所有IPv4地址

[root@localhost ~]# ifconfig |tr -cs '[0-9].' '\n' |sort -ut. -k3 -n

wKiom1emBo3wzPh4AABBI31VaJY378.png

2、查出分區空間使用率的最大百分比值

[root@localhost ~]# df |tr -s ' ' |cut -d' ' -f5 |tr -d % |sort -r |tail -n +2 |head -n 1

wKioL1emBrTBDe7uAAAjDhMm7YI916.png

3、查出用戶UID最大值的用戶名、UID及shell類型.

[root@localhost ~]# getent passwd |cut -d: -f1,3,7 |sort -t: -k2 -n | tail -1

wKiom1emBtKRg8UFAAApoEqjBpA113.png

4、查出/tmp的權限,以數字方式顯示

[root@localhost ~]# stat /tmp |head -4 |tail -1 |tr -s ' ' |cut -d'(' -f2 |cut -d/ -f1
或
[root@localhost ~]# stat /tmp |head -4 |tail -1 |tr ' ' '\n' |head -2 |tail -1 |tr -dc '[:digit:]'

wKiom1emBvegeR4EAABbRo9_FlU127.png

5、統計當前連接本機的每個遠程主機IP的連接數,并按從大到小排序

[root@localhost ~]# netstat -nt | tr -s ' ' |cut -d' ' -f5 |tail -n +3 |cut -d: -f1 |sort -n |uniq -c

wKioL1emBxPSOeIQAAAsuBTV3tM928.png


sort

主要用途

排序

sort - sort lines of text files
sort [OPTION]... [FILE]...sort [OPTION]... --files0-from=F

sort命令主要是將文本數據排序后并打印到標準輸出,sort既可從文件也可從stdin中獲得輸入,注意,sort排序整理后的文本只是顯示在了Stdout,并未改變原文件。

sort將文件的每一行作為單位進行逐行比較,比較原則是從首字符向后,依次按ASCII碼值進行比較,最后將他們按升序輸出。

主要參數

  1. -r: 反向排序

  2. -n: 按數字大小排序

  3. -f: 忽略(fold)字符串中的字符大小寫

  4. -u: –unique, 刪除輸出中的重復行

  5. -t: –field-separator, 指定排序時的字段分隔符

  6. -k X: 按照使用字段分隔符的X列來整理能夠使用多次

  7. -b: 忽略每行前面開始處的空格字符

  8. -c: 檢查文件是否已經按照順序排序

  9. -d: 排序時,只處理英文字母、數字及空格字符,忽略其它字符

  10. -m: 將幾個排序號的文件進行合并

  11. -o: –output=FILE,將整理排序后的結果存到指定的文件

使用示例

[root@localhost ~]# head -5 /etc/passwd > passwd.min
[root@localhost ~]# cat passwd.min 
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[root@localhost ~]#

將passwd.min將uid進行反序排序:

[root@localhost ~]# sort -t: -rk3 passwd.min 
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
root:x:0:0:root:/root:/bin/bash

將passwd.min中的家目錄截取并轉換成大寫,且逆序排序并輸出到另一文件:

[root@localhost ~]# cut -d: -f7 passwd.min |tr '[:lower:]' '[:upper:]' |sort -r -o minpasswd.bak
[root@localhost ~]# cat minpasswd.bak /SBIN/NOLOGIN
/SBIN/NOLOGIN
/SBIN/NOLOGIN
/SBIN/NOLOGIN
/BIN/BASH
[root@localhost ~]#

uniq

主要用途

去重

uniq - report or omit repeated lines
uniq [OPTION]... [INPUT [OUTPUT]]

uniq命令主要作用就是刪除重復的前后相接的行。

常用參數

  1. -c: –count, 顯示每行重復出現的次數

  2. -d: 僅顯示重復過的行

  3. -u: 僅顯示不曾重復的行

注:連續且完全相同廣為重復!

常和sort命令一起配合使用:sort userlist.txt | uniq -c


grep

主要用途

文本搜索工具

grep, egrep, fgrep - print lines matching a pattern
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

grep(global
search regular expression(RE) and print out the
line,全面搜索正則表達式并把行打印出來)是一種強大的文本搜索工具,它能使用正則表達式搜索并過濾文本,并把匹配的行打印出來( By
default, grep prints the matching lines.)

常用參數

  1. -a: –test,–binary-files=text option, 不要忽略二進制數據

  2. -A #: –after-context, 后#行

  3. -B #: –before-context, 前#行

  4. -C #: –context, 前后各#行

  5. -c: 統計匹配的行數

  6. -n: 顯示匹配的行號

  7. -q: 靜默模式,不輸出任何信息

  8. -i: 忽略字符大小寫

  9. -v: 顯示不能夠pattern匹配到的行

  10. -w: 整行匹配整個單詞

  11. –color=auto: 對匹配到的文本著色

  12. -e: 實現多個選項之間的邏輯或關系

  13. -E: 使用ERE

練習二:正則表達式

1、顯示/proc/meminfo文件中以大小s開頭的行;(要求:使用兩種方式)

[root@localhost ~]# grep -i ^s /proc/meminfo或
[root@localhost ~]# grep -e '^s' -e '^S' /proc/meminfo

wKioL1emB1ri__EsAABfiEBUuJ0620.png

2、顯示/etc/passwd文件中不以/bin/bash結尾的行

[root@localhost ~]# grep -v /bin/bash$ /etc/passwd

wKiom1emB4CBJCywAABnjsuQEFk203.png

3、顯示用戶rpc默認的shell程序

[root@localhost ~]# grep '^rpc\>' /etc/passwd |cut -d: -f7
/sbin/nologin
或
[root@localhost ~]# grep -w '\<rpc\>' /etc/passwd |cut -d: -f7
/sbin/nologin
[root@localhost ~]#
或
[root@localhost ~]# grep '\brpc\b' /etc/passwd |cut -d: -f7 
/sbin/nologin
[root@localhost ~]#

4、找出/etc/passwd中的兩位或三位數

[root@localhost ~]# cat /etc/passwd |tr -cs '[:digit:]' '\n' |grep '\b[0-9][0-9][0-9]\?\b'
或
[root@localhost ~]# getent passwd |tr -cs '[:digit:]' '\n' |grep '\b[0-9]\{2,3\}\b'

wKioL1emB7nxBy14AAAr18rlyx0241.png

5、顯示/etc/grub2.cfg文件中,至少以一個空白字符開頭的且后面存非空白字符的行

這是一個:^'開頭' 與 '^非'的練習

[root@localhost ~]# grep '^[[:space:]]\+[^[:space:]]' /etc/grub2.cfg

wKiom1emB9HTPktFAACb2FK1Ht4207.png

6、找出“netstat -tan”命令的結果中以‘LISTEN’后跟任意多個空白字符結尾的行

netstat -tan |grep '\<LISTEN\>[[:space:]]*$'

wKioL1emB_PhOapXAABtFpMl08M397.png

7、添加用戶bash、testbash、basher以及nologin(其shell為/sbin/nologin),而后找出/etc/passwd文件中用戶名同shell名的行

[root@localhost ~]# grep '^\<\(.*\)\>.*/\1$' /etc/passwd

wKiom1emCA_xsgq5AABBn90PxsQ664.png

[root@localhost ~]# grep '^\<\(.*\)\>.*\1$' /etc/passwd # (這各做法有問題)
[root@localhost ~]# grep '^\<\(.*\)\>.*\1$' /etc/passwd 
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:1005:1010::/home/bash:/bin/bash
[root@localhost ~]#

雖然此處結果是沒問題的,但是當我們添加一個用戶ash后,就有問題了。

wKiom1emCMeDTpfLAABM3WZdKDA431.png

練習三:擴展正則表達式

1、顯示三個用戶root、mage、wang的UID和默認shell

[root@localhost ~]# getent passwd |egrep '^root\>|^mage\>|^wang\>' |cut -d: -f3,7
或
[root@localhost ~]# grep -e '^root\>' -e '^mage\>' -e '^wang\>' /etc/passwd |cut -d: -f3,7

wKioL1emCOqRuaq6AABZokfwg68999.png

2、找出/etc/rc.d/init.d/functions文件中行首為某單詞(包括下劃線)后面跟一個小括號的行

[root@localhost ~]# egrep '^[[:alnum:]_]+\(\)' /etc/rc.d/init.d/functions
或[root@localhost ~]# egrep '^[[:alnum:]]+\(\)|^_*.*+\(\)' /etc/rc.d/init.d/functions

wKioL1emCSTxmtZaAAB_PdPI4E8114.png

擴展:該文件下以_開頭且后面有括號的行:

[root@localhost ~]# egrep '^_.*+\(\)'  /etc/rc.d/init.d/functions
__pids_var_run() {
__pids_pidof() {
[root@localhost ~]#

3、使用egrep取出/etc/rc.d/init.d/functions中其基名

[root@localhost ~]# basename /etc/rc.d/init.d/functions # 專門取基名
functions
[root@localhost ~]# echo '/etc/rc.d/init.d/functions' |egrep -o '[^/]+/?$'
functions
[root@localhost ~]#

4.統計以root身份登錄的每個遠程主機IP地址的登錄次數

[root@localhost ~]# last |tr -s ' ' |cut -d' ' -f1,3 |egrep '^root\> ([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})' |sort -n |uniq -c     
24 root 10.1.250.37
      3 root 192.168.1.101
      1 root 192.168.1.105
[root@localhost ~]#

5.利用擴展正則表達式分別表示0-9、10-99、100-199、200-249、250-255

[0-9]、[1-9][0-9]、1[0-9]{2}、2[0-4][0-9]、25[0-5]

6.顯示ifconfig命令結果中所有IPv4地址

[root@localhost ~]# ifconfig |egrep -o '\<[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\>'
10.1.253.100
255.255.0.0
10.1.255.255
127.0.0.1
255.0.0.0
192.168.122.1
255.255.255.0
192.168.122.255
[root@localhost ~]#

老王的加餐題:

待續

原創文章,作者:Liansir,如若轉載,請注明出處:http://www.www58058.com/30460

(1)
LiansirLiansir
上一篇 2016-08-07 22:05
下一篇 2016-08-07 22:06

相關推薦

  • LANMT架構搭建jspxcms

                    LANMT架構搭建jspxcms 前言 LANMT是什么? 實驗拓撲圖 實驗環境 實驗步驟 Tomcat配置 MySQL配置 jspxcms安裝 Apache Http…

    Linux干貨 2016-04-22
  • 馬哥教育網絡班21期+第三周博客作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 方法1: [root@zabbix ~]# who |awk '{print $1}'|sort -n|uniq monitor root 方法2: [root@zabbix ~]#…

    Linux干貨 2016-07-22
  • 1、安裝配置介紹

    http://note.youdao.com/yws/public/redirect/share?id=b90faa657ee452edb27ab1a13fc7b0bc&type=false

    Linux干貨 2016-08-08
  • vim文本編輯器

    vi簡介 vi:Visual Interface,是一種功能強大的文本編輯器,工作在字符模式下,它可執行輸出、輸出、查找、替換、塊等眾多文本操作,不需要圖形界面,因此執行起來效率會非常高,主要用來編輯純文本文件,常見的編碼有,ASCII,Unicode等等 文本編輯器的種類:     行編輯器:逐行來對文本進行處理的工…

    Linux干貨 2016-08-15
  • 馬哥教育網絡版25期+第一周作業

    1、描述計算機的組成及其功能 計算機是由CPU,控制器,RAM,輸入設備,輸出設備組成的 2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別 現如今主流的LINUX發行版系列主要有: Debian,Slackware,Redhat,這些發行版都是基于GUNLinux開發的,不過是由不同的組織或團體開發并發行的。 3、描述Linux的哲學思想,…

    Linux干貨 2016-12-05
  • 概述Windows2003的卷影副本

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/157940      卷影副本,也就是Volume Shadow Server簡單來講,卷影副本(或稱為VSS)可以簡單…

    Linux干貨 2015-03-25
欧美性久久久久