Linux運維第3天 Linux文字處理及bash

2021-06-22 06:49:10 字數 2784 閱讀 1175

檢視文字:

cat,tac,more,less,head,tail

cat:

-n: number

-a:顯示特殊字元

-e:顯示行尾

tac:

反向顯示

more:

到檔案尾後就退出

b:向前一屏

space:向後一屏

enter:向下一行

less:

到檔案尾後後不退出

b:向前一屏

space:向後一屏

enter:向下一行

head:檢視前n行

tail:檢視後n行

-n 2:檢視前2行

-f  :持續檢視,等待更新,後續追加

文字處理:

cut,join,sed,awk,sort,uniq,grep,paste

cut:

-d:指定分隔符,預設是空格,可以加空格也可以不加

-f:指定要顯示的字段

-f 1,3

-f 1-3

sort:

-n:數值排序

-r:降序

-t:分隔符

-k:指定排序字段

-u:unique(去重)

-f:忽略大小寫

uniq:

必須相鄰的重複的才會去重

-d:只顯示重複的行

-d:重複行全部都顯示

-c:統計每行重複的次數

文字統計

wc:-w:word

-c:character(看不到特殊字元也計算在內)

-l:line

-l:最長的一行包含多少字元

字元處理

tr:轉換,刪除字元,使用標準輸入

tr 'a-z' 'a-z' < /etc/passwd

-d:刪除字符集中的所在字元

程序:是程式的副本,在每個程序看來,當前主機上只存在核心和當前程序,是程式執行的例項

export lang=en

bash及其特性:

shell:外殼

gui:gnome,kde,xface

cli:sh,csh,ksh,bash,tcsh,zsh 

使用者工作環境:

bash:

shell,子shell

#pstree

bash:

1.命令歷史

2.管道,重定向

3.命令別名

4.命令列編輯

5.命令列展開

6.檔名通配

7.變數

8.程式設計

游標跳**

ctrl+a:跳到命令列首

ctrl+e:跳到命令行尾

ctrl+u:刪除游標至行首的內容

ctrl+k:刪除游標至行尾的內容

ctrl+左右方向鍵可以一次跳乙個單詞

ctrl+l:清屏

命令歷史:

檢視命令歷史:history

-c:清空命令歷史

-d:從指定位置刪除指定個命令歷史 offset [n]

-w:儲存命令歷史至歷史檔案~/.bash_hostory

histsize:命令歷史緩衝區大小

命令歷史使用技巧:

!n:執行命令歷史中第n條命令

!-n:執行命令歷史中倒數第n條命令

!!:執行上一條命令

!str:執行開頭匹配str的最近乙個命令

!$:引用上乙個命令的最後乙個引數

esc,.:引用上乙個命令的最後乙個引數

alt+.:引用上乙個命令的最後乙個引數(遠端終端不支援)

命令補全:

搜尋path當唯一時自動補全,當不唯一時敲擊兩次tab會列出所有命令,如果命令太多會詢問是否顯示

路徑補全:

同上命令別名:

alias commandstr='command'

unalias commandstr

只在當前shell中有效

命令替換:

把命令中某個子命令替換為其執行結果的過程

$(command)

`command`(反引號)

bash支援的引號:

``:命令替換

"":弱引用,可以實現變數的替換

'':強引用,不完成變數的替換

檔名通配,globbing

*:任意長度的任意字元

?:單個任意字元

:匹配指定範圍內的任意單個字元 [abc] [a-m] [0-9] [0-9a-z]

[^]:匹配指定範圍之外的任意單個字元

[:space:]:空白字元

[:punct:]:標點符號

[:lower:]:小寫字母

[:upper:]:大小字母

[:alpha:]:字母

[:digit:]:數字

[:alnum:]:數字和大小寫母

用的時候要再一層:即 [[:space:]]  [^[:sapce:]]

練習:1.建立a123, cd6, c78m, c1 my, m.z, k 67, 8yu, 789等檔案;注意,以上檔案是以逗號隔開的,其它符號都是檔名的組成部分;

2.顯示所有以a或m開頭的檔案;

ls [am]*

3.顯示所有檔名中包含了數字的檔案;

ls *[0-9]* 

ls *[[:digit:]]*

4.顯示所有以數字結尾且檔名中不包含空白的檔案;

ls *[^[:space:]]*[0-9]   ?????????

5.顯示檔名中包含了非字母或數字的特殊符號的檔案;

ls *[^[:alnum:]]*

Linux學習第3天

目錄 高階命令 grep文字搜尋工具 系統命令 檢視 殺死程序的方式 netcat 管道符 作用 前乙個命令輸出結果,作為後乙個命令的輸入 對於前乙個命令的錯誤沒有處理能力 ls help more df lh 檢視硬碟容量和剩餘空間 free h 檢視記憶體狀況 ps process顯示所有程序以...

Linux運維是什麼?linux運維的基礎知識

如果您對運維行業了解一些,應該會知道,現在的運維早已不是早年的 睡機房 往辦公室打眼一看,分不清是運維攻城獅還是開發程式猿,但是,運維這行也是春天到了,今天linux,明天雲計算的,各種新鮮概念層出不窮,那麼,linux運維是什麼?雲計算運維又是什麼?linux運維需要掌握的基礎知識 1 shell...

Linux運維第六天課程

1.作業系統基礎管理命令 2.作業系統快捷方式使用 3.作業系統編輯命令vi 4.如何檢視系統命令幫助手冊 5.系統的目錄結構 和檔案目錄都有關係的一些命令 系統資料資訊進行備份 copy cp 複製命令 語法格式 cp 引數 原始檔 需要備份檔案 目標檔案 備份之後的檔案 備份檔案資訊 root ...