計算機組成部分
運算器/控制器:CPU
存儲器:RAM
輸入設備/輸出設備
程序:指令和數據
控制器:指令
運算器:
存儲器:
地址總線:內存尋址
數據總線:傳輸數據
控制總線:控制指令
寄存器:CPU暫時存儲器
set -C:禁止對已經存在的文件使用覆蓋重定向
強制覆蓋輸出 >
+C:關閉上述功能
2>:錯誤輸出,只能重定向錯誤輸出
2>>:追加的方式實現重定向輸出
& >:重定向標準輸出或錯誤輸出至同一文件
<:輸入重定向
<<:在此處生成文檔
tr 替換或刪除,不接受文件作爲參數
cat 鏈接並輸出
管道:前一個命令的輸出,作爲後一個命令的輸入
命令1 | 命令2| 命令3|……
such: echo "leo" | tr 'a-z' 'A-Z'
tee命令
保存在文件中一份,輸出至屏幕上一份
such:echo "leo" | tee /tmp/hello.out
cut:
cut -d: -f7 /etc/passwd | sort -u
file:查看文件類型
file *
file `路徑`
文本查找的需要gerp,egrep,fgrep
gerp:根據模式,搜索文本,並將符合模式的文本行顯示出來
Pattern:文本字符和正則表達式的元字符組合而成匹配條件
grep [options] PATTERN [FILE...]
-i 忽略大小寫
--color 加以顏色 可以添加別名
laias grep='grep --color'
-v 反向顯示,沒有被模式疲憊到的行
-o 只顯示被模式匹配到的字符串
-E 使用擴展正則表達式
-A(後面加數字):找到行顯示後面的n行
grep -A 2 '^core id' /pro/cupinfo
-B(後面加數字):找到行顯示前面的n行
grep -B 2 '^core id' /pro/cupinfo
-C(後面加數字):找到行顯示前後面的n行
grep -A C '^core id' /pro/cupinfo
*:任意長度的任意字符
?:任意單個字符
[]:
[^]:
正則表達式:
元字符:
.:匹配任意單個字符
[]:匹配指定範圍外的任意單個字符
[^]:匹配指定範圍外的任意單個字符
字符集合:[:digit:],[:lower:],[:upper:],[:punct:],[:space:],[:alpha:],[:alnum:],
匹配次數:
*:匹配其前面的字符任意次
.*:任意長度的任意字符
a.*b a開頭b結尾,中間隨意
\?:配置其前面的字符1次或者0次
\{m,n\}:匹配其前的字符,至少m次,至多n次
such:\{1,\}
:\{0,3\}
grep 'a\{2,3\}b' aa.txt
grep 'a.\{2,3\}b' aa.txt
位置錨定
^: 錨定行首,此字符後面的任意內容必須出現在行首
$ : 錨定行尾,此字符前面的任意字符必須出現在行尾
^$:空白行
\<:其後面的任意字符必須作爲單詞首部出現
\>:其前面的任意字符必須作爲單詞尾部出現
\<root\>
such:grep '\<root' aa.txt
grep 'root\>' aa.txt
grep '\<root\>' aa.txt root必須是一個單詞
分組:
\(\)
\(ab\)* 匹配ab
向後引用
\1:引用第一個左括號以及與之對應的右括號的所有內同
\2
\3
\4
grep '\([0-9]).*\1$' a.txt
正則表達式:
basic regexp :基本
extended regexp:擴展
基本正則表達式:
.:
[]
[^]
\?: 0次或者1次
\{m,n\}:至少m次,至少n次
.*:任意多少次
擴展正則表達式:
grep=grep -E
字符匹配:
.
[]
[^]
次數匹配
*:
?:
+:匹配其前面的字符至少一次
{m,n}:不需要使用反斜線(擴展正則表達式特有)
錨定字符和基本正則表達式一樣
^
$
\<
\>
分組:
\1,\2,\3,……
|: or 的意思
a|b 或者
such: grep --color -E ' C|cat' A.txt
grep --color -E ' (C|c)at' A.txt
such:
顯示所有以數字結尾且文件名中不包含空白的文件
ls * [^[:space:]]*[0-9] ????????
找出/boot/grub/grub.conf文件中1-255之間的數字:
\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]|)\>
ifconfig | egrep
'\< \>'{重複次數}
such :[0-9]{2} 重複一次
fgrep:不支持正則表達式
速度快,在沒有使用正則表達式的適合使用比較合適