查看文本:
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天:Linux文本處理及bash
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
linux下安裝並使用Gnuplot
isyslab
2018-08-27 07:01:56
mysql備份策略(全量備份+增量備份)
isyslab
2018-08-27 07:01:52
Linux常用網絡配置命令
IT人生-Panda
2018-08-27 03:08:30
Linux運維第5天:Linux下bash配置及I/O重定向和grep文本查找
will835559313
2018-08-26 21:45:32
Linux運維第9天:Linux下磁盤管理及使用掛載
will835559313
2018-08-26 21:45:29
Linux運維第4天:Linux權限及用戶管理
will835559313
2018-08-26 21:45:29
Linux運維第6天:Linux下shell編程
will835559313
2018-08-26 21:45:29
Linux運維第7天:Linux下sed工具及shell編程
will835559313
2018-08-26 21:45:29
Linux運維第9天:Linux下suid,sgid,acl,shell編程
will835559313
2018-08-26 21:45:29
Linux運維第2天:Linux文件系統詳解
will835559313
2018-08-26 21:45:16
Linux運維第8天:Linux下vim使用及find工具
will835559313
2018-08-26 21:45:16
Linux運維第1天:Linux操作系統基礎
will835559313
2018-08-26 21:45:13
tomcat編譯安裝
不会飞的大象
2018-08-26 19:18:08
MySQL5.7安裝+基於GTID主從複製+並行複製+增強半同步複製+讀寫分離+M-S-S架構(聯級複製)
不会飞的大象
2018-08-26 19:18:08
24小時熱門文章