Linux學習筆記(shell基礎知識)

history:默認1000條記錄

!$:表示上一次命令的最後的參數

!!:表示上一條命令

!數字:運行命令歷史裏面第數字條命令

!命令:表示運行最近一次的命令,(和!後面的一樣)

 

alias:別名

         主要是用於簡化操作

unalias:可以取消別名

 

通配符:

*:表示可以匹配零個或多個字符

[]:表示裏面的一個字符

?:表示匹配一個任意字符

 

重定向:

         >>:追加

         >:覆蓋

         清空一個文件:>filename

         2>:表示錯誤信息重定向(覆蓋)

         2>>:表示錯誤信息重定向(追加)

         如果所有的信息都追加到一個文件:

                   eg:ssh  *.sh  >> champly.log  2>> champly.log

 

xargs:可以把輸出的東西轉化成一行

 

使用ctrl + z可以把任務掛起,使用jobs可以查看後臺任務,fg可以調出後臺的程序到前臺

         jobs:可以看任務的號

         fg+ 數字可以調出具體的後臺,如果不加,就是上一次,也就是最後一次調入後臺的

         bg+ 數字:可以把任務調入後臺運行

ctrl + c:終止任務運行

 

系統自定義的變量偶是大寫的

自定義變量:

         eg:champly=1

         echo$champly

 

env:可以看系統環境變量(可以列出全局的變量export申明的變量)

set:可以看到系統環境變量和用戶自定義的變量

查看自定義的變量

自定義的變量:

         數字、字母、下劃線、$(數字不能開頭)

         字符串類型的:

                   單引號:強引用(不識別關鍵字)

                   雙引號:弱引用(識別關鍵字)

                   反引號:引用結果

         字符串的疊加:

                  

                   如果有特殊符號就是用單引號:

                           

         使用unset可以取消變量:

                  

 

全局配置:

/etc/profile:

/etc/bashrc:

 

私有配置:

~/.bashrc:打開一個shell執行的文件

~/bash_profile:會在用戶登錄的時候執行

測試:

         修改文件:

結果:

 

通過/etc/profile可以看見umask的值:

 

PS1表示的意思:

         記住,$後面有一個空格,要修改的話不要忘記了

 

在shell中. 表示source,點後面必須有空格,表示生效的意思

 

~/.bash_history:命令歷史的文件

~/bash_logout:系統退出的時候運行的文件

 

shell中的特殊字符:

*:表示可以匹配零個或多個字符

?:表示匹配一個任意字符

#:表示註釋

$:用來標記一個變量

;:表示多個命令寫在一行

~:表示家

&:可以把一個任務放入後臺,也可以連接兩個命令

[]:表示裏面的符號選以一個

 

cut:分隔符:

         cut  -d  ’:’ -f  1 /etc/passwd:

         cut  -c 1-3  /etc/passwd:

 

 

sort:排序(按照ASCII排序的)

         sort  -t ‘:’  -k  3  /etc/passwd(3表示給第幾段排序)加上 –n就是按照數字排序

 

wc filename:可以統計文件信息

         -l:判斷一個文件有多少行

 

uniq -c:可以顯示重複的行

 

tee可以重定向:

cat 1.txt  |  tee 2.txt:可以把1.txt的內容重定向到2.txt並打印前面的命令

 

tr:可以替換字符

         eg:ls  |  tr  'a-z'  'A-Z'

 

split:可以分割多個文件

         -b:可以按照文件的大小來分割文件

         eg:split  -l  2000 1.txt

         可以自定義名字:可以在最後面添加名字

         

可以統一的修改文件名:

ls  champly*  |  xargs -i  mv  {}  {}.txt

 

&&:表示兩個命令都執行

||:表示或(這兩個和c語言中的是一樣的執行順序)

2015年4月8日

by:champly 

發佈了44 篇原創文章 · 獲贊 7 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章