Shell學習筆記 未完待續

2021-06-20 21:24:35 字數 1759 閱讀 9619

一、cat的用法總結:

cat是乙個簡單而通用的命令,用來顯示內容,建立檔案,還可以用來顯示控制字元;但是在使用cat是請注意,它不會在檔案分頁符處停下來,它會一下顯示完整個檔案。

如果希望每次顯示一頁,可以使用more或者cat命令的輸出通過管道傳遞到另外乙個具有分頁功能的命令中:

cat myfile | more

或者是:

cat myfile | pg

cat的一般命令形式是

cat [options] filename1 ... filename2 ...

cat的最有用常見命令是:

-v 顯示控制字元;

如果希望可以顯示名為myfile的檔案,可以用:

cat myfile

那麼希望可以顯示多個檔案,那麼可以用 :

cat myfile1 myfile2 myfile3 ...

那麼假如希望將多個檔案中的內容全部輸入到另外乙個檔案中,那麼就需要使用重定向:

cat myfile1 myfile2 myfile3 > bigfile

cat >filename

ps:如果想退出,直接crtl+z即可;

二、管道

管道的定義:可以通過管道把乙個命令的輸出傳遞給另乙個命令作為輸入。管道用豎槓「|」表示。

它的一般形式是:

命令1 | 命令2

命令1的輸出作為命令2的輸入,就像乙個管道一樣,左邊部分的出口是右邊部分的入口,如下圖:

sed、awk和grep都很適合用管道,特別是在簡單的一行命令中。

接下來使用awk作為例子:

who | awk ''

如果你希望列出系統中所有的檔案系統,可以使用管道把df命令的輸出傳遞給awk命令,awk命令顯示出其中的第一列。

你還可以再次使用管道把awk的結果傳遞給grep命令,去掉最上面的filesystem。

$ df -k | awk '' | grep -v "filesystem"

/dev/sda2

/dev/sda3

如果你還希望將前面的額「/dev/」去掉,那麼在最後再次加入乙個管道,並使用sed命令:

df -k | awk '' | grep -v "filesystem" | sed "s/\/dev\///g"

sda2

sda3

三、tee命令

tee命令作用可以用字母t來形象的表示。它把輸出的乙個副本書送到標準輸出,另乙個副本拷貝到相應的檔案中。

如果希望在看到輸出的同時,也將其存入另乙個檔案,那麼這個命令再適合不過了。

它的一般形式是:

tee -a filenames

其中,-a表示追加到檔案末尾

例如:我們將who的命令結果,輸出到終端螢幕上,同時儲存到檔案who.out:

who | tee who.out

使用圖來表示這個例子就是:

我們還可以使用-a來將不同的命令使用同乙個日誌檔案:

echo "test" | tee -a who.out

echo "test2" | tee -a who.out

test

test2

ps:未完待續.....

Shell程式設計筆記(未完待續)

單引號關閉所有有特殊作用的字元 而雙引號只要求shell忽略大多數,除了 美元符號 反引號 反斜槓,這3種特殊字元不被忽略。具體而言 單引號包括的內容均被原樣輸出 雙引號會做變數替換,命令替換和轉義,除此之外原樣輸出 示例 bin bash dt today is singlequote dt is...

MySQL學習筆記(未完待續 )

二 儲存引擎 索引是在儲存引擎層實現的,而不是在伺服器層實現的,所以不同儲存引擎具有不同的索引型別和實現。b 樹是大多數mysql 儲存引擎的預設索引型別。因為不再需要進行全表掃瞄 類似於漢語字典中一頁一頁的去查詢乙個漢字 只需要對樹進行搜尋即可 類似於利用漢語字典中的目錄頁去快速定位乙個漢字,索引...

FasttDFS學習筆記(未完待續。。。)

fastdfs client 客戶 ke lai en te storage 儲存 si dong rui zi tracker 追蹤者 chuan ke 英語不好見笑。奸笑 什麼是fastdfs 2.fastdfs架構 trecker server 作用是負載均衡和排程,通過trecker ser...