目錄
一、shell的基本形式
1.shell的種類 :sh、bash、csh、tcsh、ash 等,
(1).sh shell
(2). csh shell
(3). tcsh shell
(4). ash shell
(5). bash shell
2. shell命令的基本格式
3.注意
1.Linux嚴格區分大小寫, a A 不同
2.使用分號( ; ) 一行中輸入多個命令,
3.按下Table鍵,自動補齊命令、目錄或檔案名,
4.系統會把過去輸入過的命令記憶下來,只要按方向鍵中的上下箭頭
4.默認的文本界面 Shell 提示符有兩種:
5.輸入輸出重定向:
6.管道
二、shell常用命令
1.切換作業目錄命令cd
命令:
講解:
2.顯示當前路徑命令pwd
命令:
講解:
3.查看目錄命令ls [ls: list]
命令:
講解:
例程:
4. 顯示檔案命令 [cat :concatenate連鎖]
命令:
講解:
例程:
5.分屏顯示命令 more:
命令:
講解:
6.按頁顯示命令less
命令:
講解:
7.復制命令cp:[cp:Copy file]
命令:
講解:
注意:
8.洗掉命令rm:[rm :Remove(洗掉目錄或檔案)]
命令:
講解:
例程:
注意:
9.移動或重命名命令
命令:
講解:
例程:
注意:
10.創建目錄命令
命令:
講解:
11.洗掉空目錄命令
命令:
講解:
例程:
12. 查找檔案或者目錄命令find
命令:
講解:
例程:
13.檔案定位命令
命令:
講解:
例程:
14.檔案內容檢索命令grep
命令:
講解:
例程:
15.鏈接命令
命令:
講解:
16.創建檔案、改變檔案或目錄生成時間命令 touch
命令:
講解:
17.打包命令 tar
命令:
講解:
18. 壓縮命令 zip 和gzip
命令:
講解:
19.壓縮檔案命令 gzip gunzip
20.修改時間 date; 日歷 cal ; 顯示時間命令 clock
命令:
講解:
21.幫助命令
命令及講解:
一、shell的基本形式
shell是一個命令解釋器,它可以用來啟動、掛起、停止甚至撰寫程式,shell是Linux作業系統的一個整體組成部分,也是Linux作業系統和UNIX設計的一部分,
1.shell的種類 :sh、bash、csh、tcsh、ash 等,
(1).sh shell
全稱是 Bourne shell,由 AT&T 公司的 Steve Bourne開發,為了紀 念他,就用他的名字命名了,sh 是 UNIX 上的標準 shell,很UNIX 版本都配有 sh,sh 是第一個流行的 Shell
(2). csh shell
sh 之后另一個廣為流傳的 shell 是由柏克萊大學的 Bill Joy 設計這個 shell 的語法有點類似C語言,所以才得名為 C shell ,簡稱為 csh,
(3). tcsh shell
是 csh 的增強版,加入了命令補全功能,提供了更加強大的語法支持,
(4). ash shell
一個簡單的輕量級的 Shell,占用資源少,適合運行于低記憶體環境,但是與下面講到的 bash shell 完全兼容,
(5). bash shell
bash shell 是 Linux 的默認 shell,本教程也基于 bash 撰寫,bash 由 GNU 組織開發,保持了對 sh shell 的兼容性,是各種 Linux 發行版默認配置的 shell,
2. shell命令的基本格式
命令名 [選項] <引數1> <引數2> …
[選項]是對命令的特別定義,以減號(-)開始,多個選項可以用一個減號(-)連起來,
ls -l -h 與 ls -lh 相同,
<引數>提供命令運行的資訊,或者是命令執行程序中所使用的檔案名,
3.注意
1.Linux嚴格區分大小寫, a A 不同

2.使用分號( ; ) 一行中輸入多個命令,


3.按下Table鍵,自動補齊命令、目錄或檔案名,
4.系統會把過去輸入過的命令記憶下來,只要按方向鍵中的上下箭頭
4.默認的文本界面 Shell 提示符有兩種:
root 用戶登錄后的提示符: #
普通用戶登錄后的提示符: $
![]()
5.輸入輸出重定向:
輸入定向: <Shell command<inputfile
輸出定向: >, >>
6.管道
可以將多個命令組合到一起,把管道左邊的命令的輸出 作為右邊命令的輸入
grep: grep word filename
二、shell常用命令
1.切換作業目錄命令cd
命令:
[cd : Change Directory]
講解:
所謂作業目錄,就是當前操作所在的目錄,用戶在使用Linux的時候,經常需要更換作業目錄,cd命令可以幫助用戶切換作業目錄,后面可跟絕對路徑,也可以跟相對路徑, (1).如果省略目錄,則默認切換到當前用戶的主目錄, (2).還可以使用“~”、“.”和“..”作為目錄名, cd 目錄名 例如,切換到/usr/bin/可用如下命令: [root@myhost root]# cd /usr/bin 切換到當前用戶的主目錄可用如下命令: [root@myhost root]# cd ~
2.顯示當前路徑命令pwd
命令:
[pwd: print work directory]
講解:
列印當前目錄 顯示出當前作業目錄的絕對路徑,
3.查看目錄命令ls [ls: list]
命令:
[ls: list]
講解:
ls是英文單詞list的簡寫,其功能為列出目錄的內容,使用相應的引數可以查看檔案的相關資訊,是用戶最常用的命令之一,它類似于DOS下的dir命令,該命令的語法如下:
該命令的語法 ls常用的引數及含義 參 數 含 義 -a 顯示指定目錄下所有子目錄與檔案,包括隱藏檔案 -c 按檔案的修改時間排序 -F 在列出的檔案名后以符號表示檔案型別:目錄檔案后加“/”,可執行檔案后加“*”,符號鏈接檔案后加“@”,管道檔案后加“|”,socket檔案后加“=” -h 以用戶習慣的單位表示檔案的大小,K表示千,M表示兆,通常與-l選項搭配使用 -l 以長格式顯示檔案的詳細資訊,每行列出的資訊依次是:檔案型別與權限、鏈接數、檔案屬主、檔案屬組、檔案大小、檔案建立或修改的時間、檔案名,對于符號鏈接檔案,顯示的檔案名后有“—>”和參考檔案路徑名;對于設備檔案,其“檔案大小”欄位顯示主、次設備號,而不是檔案大小,目錄中總塊數顯示在長格式串列的開頭,其中包含間接塊 -r 從后向前地列舉目錄中的內容 -s 按檔案大小排序 -t 按檔案建立的時間排序,越新修改的越排在前面 -u 按檔案上次存取時間排序
例程:
使用ls命令查看root目錄下的檔案資訊,在命令提示符下執行如下命令,執行結果如下圖所示,
4. 顯示檔案命令 [cat :concatenate連鎖]
命令:
[cat :concatenate連鎖]
講解:
檔案查看和連接命令cat: cat命令:可以用來查看檔案內容, :可以用于即合并檔案, 該命令格式如下: cat [選項] 檔案名
常用引數及含義 選項
含 義
-b
顯示檔案中的行號,空行不編號
-E
在檔案的每一行行尾加上“$”字符
-T
將檔案的Tab鍵用字符“^I”來顯示
-n
在檔案的每行前面顯示行號
-s
將連續的多個空行用一個空行來顯示
-v
顯示除Tab和Enter之外的所有字符
例程:
使用cat命令查看檔案內容,
5.分屏顯示命令 more:
命令:
more [選項] 檔案名
講解:
和cat命令類似,more可將檔案內容顯示在螢屏上,
1.每次只顯示一頁,
2.按下空格鍵可以顯示下一頁,
3.按下q鍵退出顯示. 檔案中搜索指定的字串,
其格式如下:
more [選項] 檔案名
6.按頁顯示命令less
命令:
less [選項] 檔案名
講解:
less 命令作用和more命令類似,可用于瀏覽文本檔案的內容,
(1).less命令允許用戶使用游標鍵反復瀏覽文本,
(2).less可以不讀入整個文本檔案,因此在處理大型檔案時速度較快,
(3).與more命令相比,less命令的功能更加前大,
7.復制命令cp:[cp:Copy file]
命令:
[cp:Copy file]
講解:
cp 命令的功能是將給出的檔案或目錄復制到另一個檔案或目錄中,相當于DOS下的copy命令,
該命令可以同時復制多個源檔案到目標目錄中,在進行檔案復制的同時,可以指定目標檔案的名稱,
其基本使用格式如下:
cp [選項] 源目錄或檔案 目標目錄或者檔案 常用選項及含義如下表所示,
選項
含 義
-a
該選項通常在復制目錄時使用,它保留鏈接、檔案屬性,并遞回地復制目錄
-d
復制時保留鏈接
-f
洗掉已經存在的目標檔案而不提示
-i
互動式復制,在覆寫目標檔案之前將給出提示要求用戶確認
-p
此時cp命令除復制源檔案的內容外,還將把其修改時間和訪問權限也復制到新檔案中
-r
若給出的源檔案是目錄檔案,則cp將遞回復制該目錄下的所有子目錄和檔案,目標檔案必須為一個目錄名
-l
不作復制,只是鏈接檔案
注意:
為防止用戶在不經意的情況下用cp命令破壞另一個檔案,建議用戶在使用cp命令復制檔案時,最好使用i選項, 例:創建檔案file3,使用cp命令將檔案file3復制到/tmp目錄,并改名成file4,在終端提示符下執行如下命令,執行結果如下圖所示, [root@myhost root]# touch file3 [root@myhost root]# cp –i file3 /tmp/file4
8.洗掉命令rm:[rm :Remove(洗掉目錄或檔案)]
命令:
[rm :Remove(洗掉目錄或檔案)]
講解:
rm 命令可以洗掉一個目錄中的一個或多個檔案或目錄,也可以將某個目錄及其下的所以檔案及子目錄均洗掉,洗掉鏈接檔案時,只是斷開了鏈接,原檔案保持不變,該命令的基本使用格式如下:
rm [選項] 檔案名 常用引數及含義如下表所示,
選項
含 義
-i
以進行互動式方式執行
-f
強制洗掉,忽略不存在的檔案,無需提示
-r
遞回地洗掉目錄下的內容
例程:
使用rm命令分別進行互動式洗掉和強制洗掉,在命令提示符下分別執行如下命令,執行結果如下圖所示,
[root@myhost root]# rm –i file1
[root@myhost root]# rm –f file1
注意:
使用“rm -i file1”命令時采用了互動式執行方式,詢問是否洗掉file1檔案,
“rm -f file1”命令時采用了強制執行方式,直接洗掉指定的檔案,
9.移動或重命名命令
命令:
mv: [mv:Move file]
講解:
用戶可以使用 mv 命令來移動檔案或目錄,也可以給檔案或目錄重命名,它的用法相當于DOS下的ren和move的組合,
該命令格式如下:
mv [選項] 源檔案或目錄A 目標檔案或目錄B 常用引數及含義如下表所示,
參 數
含 義
-i
互動方式操作,如果mv操作將導致對已存在的目標檔案的覆寫,系統會詢問是否重寫,要求用戶回答以避免誤覆寫檔案
-f
禁止互動式操作,如有覆寫也不會給出提示
如果mv命令格式為“mv 源檔案 目標檔案”,且兩個檔案在同一目錄下,則表示將源檔案重命名為目標檔案;
mv命令是移動檔案或目錄還是重命名檔案或目錄,視源檔案和目標檔案的型別而定,
如果源檔案和目標檔案的型別都為檔案,且兩個檔案同在一個目錄,則是將源檔案重命名為目標檔案,
如果源檔案為目錄,目標檔案為不存在的目錄,它們同在一個父目錄,則是將源目錄重名為目標目錄,
如果目標檔案為已存在的目錄,源檔案可以是多個檔案或目錄,mv命令將指定的源檔案或目錄均移至目標目錄中,
例程:
使用mv命令將file3檔案移動到/home目錄下,并用ls命令查看結果, 在終端提示符下輸入如下命令,執行結果如下圖所示,
[root@myhost root]# ls ←查看移動前當前目錄下檔案
[root@myhost root]# mv file3 /home ←移動file3檔案到/home目錄
[root@myhost root]# ls ←查看移動后當前目錄下檔案
[root@myhost root]# ls /home ←查看移動后/home目錄下檔案
注意:
使用mv命令跨檔案系統移動檔案時,先復制檔案,再將原有檔案洗掉,而鏈接至該檔案的鏈接也將丟失,
10.創建目錄命令
命令:
mkdir [mkdir :Make Directory(創建目錄]
講解:
可使用mkdir命令創建一個新的目錄,需要注意的是新建目錄的名稱不能與當前目錄中已有的目錄或檔案同名,并且目錄創建者必須對當前目錄具有寫權限,
該命令格式如下: m
kdir [引數] 目錄名 常用引數及含義如下表所示,
參 數
含 義
-m
對新建目錄設定存取權限
-p
如果欲建立的目錄的上層目錄尚未建立,則一并建立其上的所有祖先目錄
例: 使用mkdir命令分別創建目錄dir1、dir2,在dir1中創建目錄dir3,在dir2中創建目錄dir4,并使用touch命令在dir2中創建檔案file2,
在終端提示符下執行如下命令,如下圖所示,
11.洗掉空目錄命令
命令:
rmdir [rmdir :Remove directory]
講解:
洗掉空目錄可以使用rmdir命令,該命令是從一個目錄中洗掉一個或多個子目錄項,需要注意的是,一個目錄被洗掉之前必須是空的,洗掉某一個目錄時,必須具有對其父目錄的寫權限,如果要洗掉的目錄不空,將產生錯誤提示,
該命令的基本使用格式如下:
rmdir [-p] 目錄
命令中選項含義如下:
引數-p表示遞回洗掉目錄,當子目錄洗掉后,其父目錄為空時也一同被洗掉,命令執行完畢后,顯示相應資訊, 此外,使用 rm –r 也可洗掉目錄及其下的檔案和子目錄,
例程:
使用 rmdir -p遞回洗掉dir1和dir3目錄,使用 rm –r命令洗掉dir2目錄及其下的所有檔案和子目錄, 首先用ls命令查看root主目錄下的檔案,然后執行過洗掉目錄的命令后再用ls查看一下root目錄,在命令提示符中下執行rmdir命令和rm命令,洗掉完成后再用ls查看一下root目錄,結果如下圖所示,
[root@myhost root]# rmdir –p /root/dir1/dir3
[root@myhost root]# rm –r dir2
執行rmdir –p命令遞回洗掉目錄時,首先從最里層的子目錄進行洗掉,當dir3洗掉后,dir1為空目錄,所以能夠遞回洗掉,而dir1洗掉后,root目錄下還有其它檔案,故而會顯示提示陳述句“rmdir:‘/root’:目錄非空”,說明不能洗掉root目錄,使用rm –r命令洗掉目錄,則會給出提示資訊要求確認洗掉, 執行洗掉命令之前,用ls命令可以查看到root主目錄里有dir1和dir2兩個藍色字體顯示的目錄檔案,成功洗掉目錄后,用ls命令可以看到root目錄的這兩個目錄檔案已經被洗掉了,
12. 查找檔案或者目錄命令find
命令:
find [路徑] [選項]
講解:
find 命令功能非常強大,通常用來在特定的目錄下搜索符合條件的檔案,也可以用來搜索特定用戶屬主的檔案,
其格式如下:
find [路徑] [選項] 常用的選項及含義如下表所示,
選項
含 義
-name <filename>
指定搜索的檔案名,輸出搜索結果
-user <username>
搜索指定用戶搜索所屬的檔案
-atim <time>
搜索在指定的時間內讀取過的檔案
-ctim <time>
搜索在指定的時間內修改過的檔案
例程:
使用find命令從根目錄開始查找httpd.conf檔案;從根目錄搜索tom用戶的檔案, 在終端提示符下輸入如下命令:
[root@myhost root]# find / -name httpd.conf
[root@myhost root]# find / -user tom
命令的執行結果如下圖所示,
![]()
find命令執行結果
13.檔案定位命令
命令:
locate/slocate
講解:
該命令用于通過檔案名或擴展名搜索檔案,
locate命令是利用事先在系統中建立系統檔案索引資料庫的,然后再檢查資料庫的方式作業的,
為了提高locate命令的查出率,在使用該命令前必須擁有最新的資料資料庫,
可以使用如下的命令更新系統的索引資料資料庫: [root@myhost root]# updatedb
locate命令的格式如下:
locate [引數] 檔案名
常用的引數和含義如下表所示,
參 數
含 義
-u
建立資料資料庫,從根目錄開始
-U <dir>
建立資料資料庫,從<dir>目錄開始
-e <dir>
排除<dir>目錄搜索
例程:
例: 首先建立資料資料庫,然后搜索vsftpd.conf檔案的存放路徑, 在終端提示符下輸入如下命令: [root@myhost root]# updatedb [root@myhost root]# locate vsftpd.conf 如下圖所示,
14.檔案內容檢索命令grep
命令:
grep [選項] < string > 檔案名
講解:
rm 命令可以洗掉一個目錄中的一個或多個檔案或目錄,也可以將某個目錄及其下的所以檔案及子目錄均洗掉,洗掉鏈接檔案時,只是斷開了鏈接,原檔案保持不變,該命令的基本使用格式如下:
rm [選項] 檔案名 常用引數及含義如下表所示,
選項
含 義
-v
顯示不包含匹配文本的所有行
-n
顯示匹配行及行號
例程:
例 搜索/etc/vsftpd目錄下后綴為.conf檔案中,其內容中包含“anon”字串的文本行, 在終端提示符下輸入如下命令:
[root@myhost root]# grep anon /etc/vsftpd/*.conf 如下圖所示,
15.鏈接命令
命令:
In
講解:
16.創建檔案、改變檔案或目錄生成時間命令 touch
命令:
touch
講解:
17.打包命令 tar
命令:
講解:
18. 壓縮命令 zip 和gzip
命令:
解壓縮命令unzip 和gunzip
講解:
zip是將檔案打包為zip格式的壓縮檔案
unzip是從zip包中解壓出某個檔案
gzip是將檔案打包為tar.gz格式的壓縮檔案
gunzip從tar.gz包中解壓出某個檔案
gzip 命令:
# gzip test.txt 它會將檔案壓縮為檔案 test.txt.gz,原來的檔案則沒有了,解壓縮也一樣
# gunzip test.txt.gz
它會將檔案解壓縮為檔案 test.txt,原來的檔案則沒有了,為了保留原有的檔案,我們可以加上 -c 選項并利用 linux 的重定向
# gzip -c test.txt > /root/test.gz 這樣不但可以將原有的檔案保留,而且可以將壓縮包放到任何目錄中,解壓縮也一樣
# gunzip -c /root/test.gz > ./test.txt
zip 命令:
# zip test.zip test.txt
它會將 test.txt 檔案壓縮為 test.zip ,當然也可以指定壓縮包的目錄,例如 /root/test.zip
# unzip test.zip 它會默認將檔案解壓到當前目錄,如果要解壓到指定目錄,可以加上 -d 選項
# unzip test.zip -d /root
19.壓縮檔案命令 gzip gunzip
在18里面已經講了,看上一條,
20.修改時間 date; 日歷 cal ; 顯示時間命令 clock
命令:
修改時間 date; 日歷 cal ; 顯示時間命令 clock
命令:
講解:
21.幫助命令
命令及講解:
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/286736.html
標籤:其他



















