linux簡單命令--shell入門命令

來源:互聯網
上載者:User

標籤:shell   linux   

Bash shell的內建命令
1.(查看命令屬性) type  [-tpa] name:不加任何參數時,會顯示出那麼是外部命令還是bash內部命令
        -t :
file :表示為外部命令
alias:該命令為命令別名設定的命令
builtin:該命令為bash內建的命令功能
-p:如果後面接name為命令,會顯示完整的檔案名稱(外部命令)或者顯示內建命令
-a: 在PATH變數定義的路徑中,列出所有含有name的命令,包含alias


2.變數的擷取與設定:
1.使用echo擷取變數名稱(前面要加$)
eg: echo $PATH
2.設定變數
name=value
注意事項:
a.變數與變數之間以"="串連
b.等號兩邊不能直接接空格符號
c.變數名稱之間只能英文字母與數字,不能以數字開頭
d.若存在空格符,要使用的雙引號“"”或者單引號“‘”將變數內容結合起來,但是雙引號內的
特殊字元可以保持變數的特性,但是單引號內的特殊字元僅為一般字元
e.必要時需要將逸出字元“\”將特殊符號(如Enter,$,\,空格符,‘)等變成一般符號
f.若變數為擴充變數內容,需以雙引號及$變數名稱,如“"$PATH":/home”繼續累加內容
g.若變數需要在其他子程式中執行,則需要使用export將變數導成環境變數,如export PATH ;
h.取消變數的方法為: unset 變數名稱

3.環境系統的功能
a.環境變數的說明 : env (enviroment的簡稱) 可查看當前shell環境下所有的環境變數
b.其他在shell環境下有效變數


4.重要的變數設定
a.PS1(提示符的設定)
-\d:代表日期 格式為 "星期 月 日"
-\H:完整的主機名稱
-\h:僅取主機的第一個名字
-\t:顯示24小時格式時間,HH:MM:ss
-\T:顯示12小時格式時間, hh:MM:ss
-\u:顯示目前使用者名
-\v:bash版本資訊
-\w:完整的工作目錄名稱,家目錄會議~替換
-\W:使用basename取得工作目錄名稱,會顯示最後一個目錄名稱
-\#:執行的第幾個命令
-\$:執行結束符,root使用者會以#結束,否則為$

eg:PS1=‘[\[email protected]\h  \w \t #\#]\$‘
將會顯示[[email protected] /root 15:23:23 #23]#

5.將自訂變數轉換成環境變數:export
定義變數xxxx=linux
轉換成環境變數export xxxx
查詢所有環境變數 export就可以發現自己定義的xxxx位於最底端了


3.變數鍵盤的讀取,數組與聲明:read,array,declare
1.read [-pt] variable
-p:後面接提示符
-t:後面可以接等待的時間“秒數”,不會一直等待使用者

1.eg:通過鍵盤輸入內容存到變數vt1中
[[email protected] ~/Desktop 15:32:24 #28]#read vt1
falkfjakfhruh
[[email protected] ~/Desktop 15:32:43 #29]#echo $vt1
falkfjakfhruh
[[email protected] ~/Desktop 15:32:54 #30]#

2.提示使用者20秒內輸入內容到變數vt2中
[[email protected] ~/Desktop 15:35:51 #33]#read -p ‘input your words within 30 seconds :‘ -t 20 vt2
input your words within 30 seconds :fajjfahufhefhahfeuhfa
[[email protected] ~/Desktop 15:36:09 #35]#echo $vt2
fajjfahufhefhahfeuhfa
[[email protected] ~/Desktop 15:36:15 #36]#

   2.declare/typeset :聲明變數屬性
declare -[aixr] variable
-a : 將variable 定義為數組
-i: 將variable定義為整型數字
-x:與export一樣,將variable定義為環境變數
-r:將variable定義為唯讀對象,不可更改內容,也不能取消對象

   3.數組屬性array說明
var[index] = content 
eg: var[1] = "good day "
var[2] = "nice day"
var[3]="happy great day"
顯示數組: echo  "${var[1]} , {var[2]} , {var[3]}"


4.與檔案系統及程式相關的限制關係:ulimit
原因:使用bash可以限制某些使用者的系統資源(包括開啟的檔案數量,使用的CPU時間和使用的記憶體總量)
格式如下:ulimit -[SHacdflptu]
-H: hard limit 嚴格限制,必定不能超過設定的值
-S:sot limit 警告限制,可以超過該值,但會有警告
-a:列出所有的限制額度
-c:可建立的最大核心檔案容量(core files)
-d:程式資料可使用的最大容量
-f:此shell可建立的最大檔案容量(一般為2G),單位為KB
-l:可使用者鎖定(lock)的記憶體量
-p:可用於管道(pipe)的數量
-t:可使用的最大CPU時間(單位為s)
-u:單使用者可以使用的最大進程(process)數量
 
 eg:1.列出所有限制資料
ulimit -a
2.設定其他使用者建立檔案大小在1M以內
ulimit -f  1024

5.附加的變數的設定功能

變數設定方式 str無設定時 str為空白字串時 str設定為非Null 字元串時
var=${str-expr} var=expr var= var=$str
var=${str:-expr} var=expr var=expr var=$str
var=${str+expr} var=expr var=expr var=expr
   var=${str:+expr} var=expr var= var=expr
var=${str=expr} str=expr
var=expr
str不變
var=
str不變
var=$str
var=${str:=expr} str=expr
var=expr
str=expr
    var=expr
var=$str
var=${str?expr} expr輸至stderr var= var=str
var=${str:?expr} expr輸至stderr expr輸至stderr var=str


6.命令別名和曆史命令
A.alias cls="clear"
B.hostory
n: 列出最近的n行命令
-c:將當前shell命令中所有的命令清除
-a:將當前新增的history命令加入histfiles中,若沒有加入histfiles,預設加入 ~/.bash_history
-r:將histfiles的內容讀到當前shell的記錄中
-w:將當前的記錄寫入到histfiles中

補充命令:a.!number : 再次執行history中第number條命令
b.!command:由最近的命令向前搜尋"命令串開頭為command"的命令,並執行
c.!!:執行上一條命令

linux簡單命令--shell入門命令

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.