管理及IO重定向
輸入設(shè)備/輸出設(shè)備,程序,控制器,運算器,存儲器;
地址總線:內(nèi)存尋址;
數(shù)據(jù)總線:傳輸數(shù)據(jù)
控制總線:控制指令
寄存器:cpu暫時存儲器
系統(tǒng)設(shè)定:
1、默認(rèn)輸出設(shè)備:標(biāo)準(zhǔn)輸出STDOUT(顯示器)
2、默認(rèn)輸入設(shè)備:標(biāo)準(zhǔn)輸入STDIN(鍵盤)
3、標(biāo)準(zhǔn)錯誤輸出STDERR(顯示器)
I/O重定向:
>:標(biāo)準(zhǔn)輸出重定向,覆蓋輸出,原有內(nèi)容會被覆蓋;
>>:追加輸出,保留原有文件內(nèi)容;
>|:覆蓋輸出(強制輸出,set命令一樣無效);
&|:重定向標(biāo)準(zhǔn)輸出或錯誤輸出至同一文件;
2>:錯誤輸出重定向,覆蓋輸出;
2>>:追加錯誤輸出;
<:輸入重定向;
<<:生成文檔,文檔終止詞 ,使用 << 命令從鍵盤把多行重導(dǎo)向給STDIN,直到 終止詞 位置的所有文本都發(fā)給STDIN,例如:

set:命令,設(shè)定功能,能設(shè)定bash的功能開關(guān):
????????-c:如果文件已存在,禁止使用覆蓋重定向;
????????+c:關(guān)閉功能,允許覆蓋;
管道:
前一個命令的輸出,作為后一個命令的輸入,用豎杠 | 表示
tee:命令,讀取標(biāo)準(zhǔn)輸入到標(biāo)準(zhǔn)輸出和文件中,可與管道命令配合使用;
? ? ? ? ?-a:在原有基礎(chǔ)上追加輸出
grep及正則表達(dá)式
? ? ? ? 在linux中我們會有文本查找以及文本檢索的需要,grep命令就是用于文本檢索的,可以根據(jù)模式去搜索文本,并將符合模式的文本行顯示出來。
模式:pattern,文本字符和正則表達(dá)式的元字符(元字符是指那些在正則表達(dá)式中具有特殊意義的專用字符)組合而成的匹配條件。
grep ? ?選項 ? ?模式 ? ?文件
? ? ? ? -i ? ? ? ? ? ?忽略大小寫
? ? ? ? --color????高亮區(qū)分
? ? ? ? -v ? ? ? ? ? ?顯示無匹配信息
? ? ? ? -o ? ? ? ? ? 只顯示被模式匹配到的字符串
正則表達(dá)式(默認(rèn)貪婪模式):
.?? ??:表示匹配任意單個字符;
*? ? ?:匹配其前面的字符任意次,例如匹配a字母任意次:

.*? ? :匹配任意長度任意字符;
? ? :匹配其前面的字符一次或零次,一般在使用?的時候需要在其前面使用轉(zhuǎn)義符\;
{m,n}:匹配其前面的字符至少m次,至多n次;
位置錨定:
^ ? ?:錨定行首,表示該符號后的任意字符串,必須出現(xiàn)在行首;
$ ? ?:錨定行尾,表示改符號前的任意字符串,必須出現(xiàn)在行尾;
^$ ? :匹配空白行;
[] ? ? :匹配指定范圍內(nèi)的任意單個字符,如[a-z]表示匹配一個小寫字母;
[^] ? ?:匹配指定范圍外的任意單個字符,如[^a-z]表示匹配除小寫字母外的一個字符;
錨定詞首和詞尾:
\< ? ?:其后面的任意字符必須作為單詞首部出現(xiàn);
\> ? ?:其前面的任意字符必須作為單詞尾部出現(xiàn);
分組:
使用()對內(nèi)容進行分組,將其中內(nèi)容作為一個整體匹配;
注:幾個常用的非貪婪匹配Pattern
*? 重復(fù)任意次,但盡可能少重復(fù)
+? 重復(fù)一次貨更多次,但盡可能少重復(fù)
?? 重復(fù)0次或1次,但盡可能少重復(fù)
{n, m}? 重復(fù)n到m次,但盡可能少重復(fù)
{n,}? 重復(fù)n次以上,但盡可能少重復(fù)