1、Shell概述
每個人在成功登入linux後,系統會出現不同的提示符號。例如$、~、#等,然後你就可以開始輸入需要的命令,若是命令正確,系統就會依據命令的要求來執行,直到登出系統為止,在登入到登出期間,輸入的每個命令都會經常解譯及執行。而這個負責的機制就是shell。 2、Shell編程
其實作為命令語言互動式地解釋和執行使用者輸入的命令只是shell功能的一個方面,shell還可以用來進行程式設計。它提供了定義變數和參數的手段以及豐富的程式控制結構。使用shell編程類似於DOS中的處理檔案,稱為shellscript,或叫shell程式或shell命令檔案。shell與windows下的批次檔類似。 3、Shell分類
shell有很多,但常用的就幾種:
Shell名稱 |
開發人員 |
命令名稱 |
Bourne |
S.R.Bourne |
/bin/sh |
C |
Bill Joy |
/bin/csh |
Kom |
David |
/bin/ksh |
1、查看目前使用的是哪種shell。命令:env(該命令可以顯示當前作業系統的環境變數)。
2、shell的修改。命令:chsh -s /bin/[shell檔案名稱] (不同的shell對命令的解釋不一樣)。 4、Shell命令
命令補全:是指使用者輸入命令時,並不需要輸入完整的命令,而系統自動會找出最符合的名稱。這種功能可以節省經常輸入命令的時間。直接輸入"mk"再按兩下"tab"鍵,出現兩頭兩個字母為"mk"的命令。cat p再按兩下"tab"鍵會出現開頭字母為"p"的所有檔案或目錄。
在linux下,我們有時可能希望知道或是使用最近執行的命令,history可能會幫上大忙。
1、history 5:此項說明會顯示最近使用的5個命令。
2、!5:此項說明執行曆史編號為5的命令。
3、!ls:此項說明執行最後一次以"ls"開頭的命令。 5、神奇的ssh
概述:ssh(securt shell)是一款集遠程操作linux和進行檔案上傳和下載的軟體,那是相當的好用呀,在軟體公司幾乎所有的linux程式員都會使用ssh。安全,方便是它最大的特點。
安裝:linux的ssh服務端是在安裝linux時自動安裝一個sshd並預設是啟動的。ssh服務端的連接埠是22。windows下安裝ssh用戶端。使用ssh用戶端登陸到linux(前提是linux下的sshd服務啟動)。 6、Shell使用
命令曆史和互動:用上下方向鍵可以重複以前所輸入的命令。
命令完成功能:用tab鍵能自動完成相關命令,再次按tab可得到清單。
shell指令檔:是一個文字檔/命令集合/有執行的許可權chmod744 檔案名稱,執行方式(./檔案名稱)/(.sh尾碼名的檔案是shell檔案)。
使用者登入後自動執行的shell指令檔:1、.bashrc位於主目錄下,它之前執行系統的指令碼/etc/bashrc主要是基本配置資料 (/etc/bashrc相當於windows下的自動批次檔autoexec.bat)。2、.bash_profile位於主目錄下,它之前執行系統的指令碼/etc/profile主要是配置環境變更。
當希望在環境中臨時加入一個路徑時,可使用export,用export:PATH=$PATH:$HOME/bin:/root/test/tl
輸出環境變數PATH引用原來的值$PATH,$HOME表示工作主目錄,:是路徑分隔字元。
一些已定義好的環境變數:
SHELL:預設shell
PATH:路徑
USER:當前登入使用者的使用者名稱
顯示變數內容:echo $PATH
echo $USER
echo $SHELL
萬用字元: * 代表多個字母或數字
? 代表一個字母或數字
ls a* ls a? ls ?at? ls f080[1-6].tif
逸出字元: \
ls /mnt/winl/My\ Documents
引號:export NAME-Michael
echo Welcome $NAME, the date is date。
echo 'Welcome $NAME, the date is date':單引號 - shell不處理任何變數和命令;
echo "Welcome $NAME, the date is date":雙引號 - 處理變數但不處理命令;
echo "Welcome $NAME, the date is `date`":反引號 - 把引號中的每個單詞作為一個命令,如果是變數則先求值然後作為一個命令處理。
別名命令:alias顯示系統當前定義的所有alias
alias別名 = '命令或命令組'
aliascp='cp -i'
aliasll='ls -l --color=tty'