一、Linux系統初識
1、用戶界面
2、Linux目錄
二、Linux命令初識
1、命令的種類
2、命令的語法格式
3、Linux日期及時間設置
date、hwclock
三、文件與目錄管理
1、目錄相關的操作
cd、pwd、mkdir、rmdir
2、文件與目錄管理
ls、cp、rm、mv、basename、dirname
3、文件內容查看
cut、tac、head、tail、stat、more、less
4、新建文件及文件時間戳管理
touch
5、文件處理
wc、cut、sort、unique
四、獲得幫助
一、Linux系統初識
1、用戶交互接口
用戶接口:是一種獨特的應用程序,能夠為用戶提供啟動其它應用程序的機制。
Linux提供兩種用戶接口:
1)CLI:命令提示符
2)GUI:圖形界面
Linux中圖形界面用很多種,最常見的是由C語言開發的Gnome和C++開發的KDE。
Linux中用戶可以在不同終端中使用命令行或圖形界面。
終端的種類:
1)虛擬終端(程序)
Linux提供6個虛擬終端,可以使用Ctrl+Atl+F[1-6]進行切換;
路徑:/dev/tty#,#表示數字;
在上面界面中可以看到,系統中啟用了6個終端,tty1啟動了圖形界面,其它的都為命令提示符界面。
2)偽終端
遠程登錄或圖形界面下打開的命令提示符
路徑:/dev/pts#,#表示數字;
從上圖中可以看到啟動了兩個偽終端,其中pts/0是本地的圖形界面,pts/1是遠程登錄的命令行接口;
3)物理終端
路徑:/dev/console;
4)串行終端
路徑:/dev/ttyS#,#表示數字;
5)圖形終端
如果之前從未啟動過圖形界面可使用StartX啟動圖形終端,之后可使用ctrl+atl+F7來進行切換;
Linux默認的登錄界面可以是圖形界面或者是命令行界面,對于這兩種情況想要切換到圖形終端有不同的操作方法:
(1)用戶從命令行登錄系統
此時/dev/tty1為命令行界面,可以使用Startx命令來啟動圖形終端,之后再切換到圖形終端可以使用Ctrl+Alt+F7組合鍵;
(2)用戶選擇從圖形界面登錄系統
此時/dev/tty1為圖形界面,可以使用Ctrl+Alt+F1來進行切換。
打開多個圖形界面
使用命令 startx — :#&可以打開多個圖形界面,其中:
#:數字,表示編號;
&:表示程序在后臺運行。
例如:在系統中再打開三個圖形界面;
上面的三條命令分別在后臺又打開了三個圖形界面,如果要切換到這些終端的話,也分為兩種情況:
1)用戶從命令行登錄系統
額外啟動的圖形終端從F8開始,那么切換上面三個終端分別使用Ctrl+Alt+F[8-10];
2) 用戶從圖形界面登錄系統
額外啟動的圖形終端從F7開始,那么切換上面三個終端分別使用Ctrl+Alt+F[7-9]。
2、Linux目錄
1)Linux的目錄遵循FHS(Filesystem Hierarchy Standard)標準。
常見目錄及其存放文件的類型:
/:根目錄;
/usr: UNIX Software Resource
用于存入應用程序;
/usr/local:第三方軟件安裝目錄;
/usr/bin:大部分用戶所使用的命令;
/usr/sbin:非系統正常運行所需要的系統命令;
/usr/lib,/usr/lib64:各種應用軟件的庫文件;
/usr/share/man,/usr/share/doc:各種應用軟件的幫助文件;
二進制命令:
/bin:所有用戶都可以使用;
/sbin:只有管理員可以使用;
以上兩個目錄都是系統自身啟動和運行時可能會用到的核心二進制命令;
/lib:共享庫文件和內核模塊;
/etc:配置文件;
/dev:設備文件,也稱為特殊文件(僅有元數據,而沒有數據);
/proc:偽文件系統,內核和進程信息的虛擬文件系統接口(開機加載);
/sys:偽文件系統,硬件設備信息,虛擬文件系統接口;
/boot:系統引導加載時用到的靜態文件,內核和ramdisk;
/srv:服務所用到的數據;
/var:經常變動的文件;
/var/log:日志文件;
/mnt:建議將額外的設備掛載到此目錄;
/home:普通用戶家目錄;
/root:root用戶家目錄;
/opt:第三方應用程序的安裝目錄,現已不使用
/misc:備用目錄
2)絕對路徑與相對路徑
絕對路徑:從根目錄開始的文件名或目錄名;
例如:/etc/fstab
相對路徑:非從根目錄開始的,相對于當前目錄的文件名或目錄名;
例如:../etc/fstab
.:代表當前的目錄;
..:代表上一層目錄;
如下圖,當前目錄為/root;pwd命令用來顯示當前工作目錄;
使用絕對路徑切換到/home目錄;
使用相對路徑切換到/home目錄;
二、Linux命令初識
Linux主要是使用命令來進行系統管理與維護工作的,下面來介紹一下Linux命令。
1、命令的類型
1)內建命令:由shell程序自帶的命令;
2)外部命令:本身是一個獨立的可執行程序文件,命令名即為程序文件名;
查找方式:通過shell的內置的環境PATH中指定的路徑進行查找。
區分命令類型可以使用type命令;
2、命令的語法格式
COMMAND [OPTOIN] [ARGUMENTS]
OPTION:
短選項:-char,例如,-l,-d,-h;
多個選項間要使用空白分隔:-l -d -h;
合并使用:-ldh;
長選項:–word,例如,–long;
長選項一般不能合并使用;
注意:有些選項需要帶參數,稱為選項參數;
mkfs -t ext4
參數:
命令的作用對象。
3、Linux日期及時間設置
Linux中修改時間的方法有很多,下面介紹三個比較常用的命令;
1)date命令格式:
date [OPTION]… [+FORMAT]
date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
OPTION:
-d/–date=STARING:以指定格式顯示指定日期;
-r/–reference=FILE:顯示指定文件的最后修改日期;
-u:顯示或修改UTC日期;
FORMAT:
+%F:以yyyy-mm-dd格式顯示日期;
+%D:以mm/dd/yy的格式顯示日期;
+%T:顯示時間;
+%Y:顯示年;
+%m:顯示月;
+%d:顯示天;
+%H:顯示小時;
+%M:顯示分鐘;
+%S:顯示秒;
+%s:時間戳計時法,從Unix元年(1970-01-01 00:00:00)到此刻所經過的秒數;
+%u:顯示周幾
[MMDDhhmm[[CC]]YY[.ss]]:設置時間;
MM:月份;
DD:天;
hh:小時;
mm:分鐘;
[CC]:世紀,可省略;
YY:年;
.ss:秒,可省略。
下面舉例說明date命令的用法:
(1)在使用-d選項時,日期的指定方法靈活:
四位以下的數字代表時間,如1301,131,13,1等;
八位數字代表日期,如20150102;
八位以上的數字將從右向左取四位做為日期,剩余左側的所有數字全部做為年份顯示;顯然對于目前我們經歷的時間來看,這種顯示是不正確的,所以八位以上的數字可以說是沒有意義的;
使用“/”分隔的數字代表日期,如1/12,表示1月12日;
使用“:”分隔的數字代表時間,如1:12,表示1點12分;
(2)使用-r選項查看文件的最后修改時間;
(3)顯示UTC時間;
(4)以指定的格式顯示時間
date命令默認的輸入不太符合我們的閱讀習慣,可以通過FORMAT來定制輸出格式;
也可以將選項格式化成易讀的形式;
(5)通過+%s來計算從Unix元年到現在經過了多少天;
(6)修改當前系統的時間;
先看一下當前的系統時間;
修改系統時間;
2)硬件時間
Linux有兩個時鐘,系統時間和硬件時間;
系統時間使用date命令修改;
硬件時鐘使用hwclock命令來查看和修改;
hwclock命令:
hwclock命令可以通過參數來同步系統時鐘和硬件時鐘:
-s:以硬件時鐘為準來同步時間;
-w:以系統時鐘為準來同步時間;
剛才系統時間被修改了,現在利用系統時間同步成正確時間;
再把系統時間修改一下,并將硬件時鐘同步為系統時間;
3)使用網絡時間服務器同步時間
Linux中可以使用ntpdate命令來同步網絡時間;此命令用法非常簡單,只需要指明服務器的地址即可;
ntpdate <SERVER>
三、文件與目錄管理
1、目錄相關的操作
1)cd命令:切換目錄
命令格式:cd 路徑
2)pwd命令:顯示當前目錄
3)mkdir命令:新建目錄
命令格式:mkdir [-mpv] 目錄名
-m:創建目錄并為目錄設置權限;
-p:遞歸創建目錄;
-v:顯示目錄新建信息;
在/tmp目錄下創建目錄test;
在/tmp目錄下創建目錄test1,并設置權限為644;
在/tmp目錄下創建多級目錄;
4)rmdir命令:刪除空目錄
命令格式:rmdir [-p] 目錄名
-p:遞歸刪除;
刪除/tmp/test2目錄;直接刪除test2目錄無法完成,因為目錄不為空;
在保證test2/a/b/c目錄為空的情況下,可以進行以下操作;
2、文件與目錄管理
1)ls命令:查看文件與目錄
命令格式:ls [OPTION]… [FILE]…
OPTION:
-a:顯示目錄中全部文件;
-d:顯示目錄本身的信息;
-l:以長格式顯示信息;
-h:以人類易讀方式顯示文件大??;
-r:逆向排序;
-i:顯示inode;
-t:依時間排序;
-A:顯示全部文件,但不包括 . 和 .. 目錄
-F:顯示文件、目錄信息時連同數據結構一同顯示;
*:可執行文件; /:目錄; =:socket文件 |:FIFO文件
-R:遞歸顯示;
-S:以文件大小排序;
以長格式列出當前目錄中的所有文件,文件大小以易讀方式顯示并排序;
2)cp命令:復制文件或目錄
命令格式:cp [OPTION] SOURCE DESTINATION
OPTION:
-p:連同文件的屬性一起復制;
-d:源文件為鏈接文件時,復制鏈接文件屬性而非文件本身;
-r:遞歸復制;
-a:相當于-pdr;
-i:交互模式;
-s:將文件復制成符號鏈接;
-l:將文件復制成硬鏈接;
-f:強制覆蓋;
(1)理解-p選項的意義;
目前有一個文件e,它的屬主是用戶d1,使用root用戶直接復制文件e,并查看其屬性;
屬主已經變為root用戶了;使用-p選項再次復制;
其屬主依然是用戶d1。
(2)復制符號鏈接文件;
文件e有一個符號鏈接文件s;
不帶任何選項復制s文件,并查看結果;
結果文件s1是源文件e的復本,而非符號鏈接s的復本;下面使用-d選項,查看結果;
文件s2是e的符號鏈接文件。
(3)將文件復制成硬鏈接和符號鏈接;
將文件e復制成硬鏈接e_h和符號鏈接e_s;
3)rm命令:刪除文件或目錄
命令格式:rm [OPTION]… FILE…
OPTION:
-r:遞歸刪除;
-f:強制刪除;
注意:此操作危險,慎用。
4)mv命令:移動、重命名文件或目錄
命令格式:mv [OPTION]… SOURCE… DSTINATION
5)basename命令:取得文件名
6)dirname命令:取得目錄名
3、文件內容查看
1)cat命令:直接查看文件內容
命令格式:cat [OPTION]… [FILE]…
OPTION:
-v:顯示特殊字符;
-E:顯示行尾的字符$;
-T:將tab顯示為^I;
-A:相當于-vET;
-b:對非空白行輸出行號;
-n:對所有行輸出行號;
顯示/etc/redhat-release文件中的所有特殊字符;
對/etc/redhat-release文件中非空白行加上行號;
對/etc/redhat-release文件中的所有行加上行號;
2)tac命令:反向查看文件內容
3)head命令:從文件第一行列出文件內容
命令格式:head [OPTION]… [FILE]…
OPTOIN:
-n, –lines=[-]K:打印文件的前K行內容,如果加上"-",由打印文件中除了后面的K行以外的所有內容;
不加任何參數默認打印前10行的內容;
(1)顯示/etc/passwd文件前10行的內容;
(2)顯示/etc/passwd文件前3行的內容;
不帶-n選項直接使用“-#”也可以達到要求;
(3)顯示/etc/passwd文件中除了后3行以外所有的內容;
從上面的結果可以看出/etc/passwd文件共有62行內容,下面顯示除了后三行的所有內容;
4)tail命令:從文件最后一行列出文件內容
命令格式:tail [OPTION]… [FILE]…
OPTION:
-n, –lines=K:顯示文件的后K行內容;
-f:持續監控文件的內容,直到按Ctrl+c才結束;
(1)顯示/etc/passwd文件后3行的內容;
(2)顯示/etc/passwd第3行以后的所有數據;
(3)持續監控/var/log/messages文件的內容;
5)stat命令:查看文件元數據
命令格式:stat [OPTION]… FILE…
6)more命令:分屏顯示長文件
使用空格鍵來進行翻屏操作。
7)less命令:分屏顯示長文件
less中可以使用相關的功能來進行查找和翻頁操作,具體可查看man文件。
4、新建文件及文件時間戳管理
touch命令
命令格式:touch [OPTION]… FILE…
不帶任何選項時,如果文件存在修改時間,否則直接創建空文件。
OPTION:
-a:僅修改訪問時間;
-c:僅修改文件的時間,即使文件不存在也不創建;
-m:僅修改mtime;
-t STAMP:指定想要修改的時間,格式為[[CC]YY]MMDDhhmm[.ss];
(1)創建一個空文件,并查看其時間戳;
從上面的結果中可以看到3個時間其意義分別為:
Access(atime):文件被讀取時更新;
Modify(mtime):文件內容更改時,此時間被更新;
Change(ctime):文件元數據被修改時,此時間更新;
(2)更新文件new_file時間,并查看;
(3)手動更新訪問時間為當前時間;
(4)手動更新修改時間為當前時間;
(5)更新修改時間到指定的時間;
5、文件處理
下面介紹的命令都不會改變文件內容。
1)wc命令:統計文件內容信息
命令格式:wc [OPTION]… [FILE]..
OPTION:
-c:統計文件內容有多少字節;
-l:統計文件中有多少行;
-w:統計文件中有多少單詞;
2)cut命令:從文件的每行中截取指定的信息
命令格式:cut OPTION… [FILE]…
OPTION:
-d:指定截取時的分隔符;
-f:指定選取的字段;
顯示/etc/passwd文件是的前10行信息,要求只顯示用戶名和shell信息;
以:為分隔符,選取第1列和第7列。
3)sort命令:根據指定的條件將文件中行進行排序
命令格式:sort [OPTION]… [FILE]…
OPTION:
-b:忽略前面的空格;
-f:忽略大小寫;
-n:使用數字進行排序;
-r:反向排序;
-u:去掉重復的行;
-t:指定分隔符;
-k:以指定的字段來排序,與-t同使用使用;
(1)在/etc/passwd中以uid字段的排序,顯示排序后的前10條記錄的前三個字段;
從上面的結果中可以看到并沒有按照真正的數字順序進行排序,sort命令默認以字符類型來排序;
(2)按照數字進行排序;
(3)按uid進行反向排序;
(4)對文件中的內容排序后進行去重
4)uniq命令:將文件中重復的行刪除
命令格式:uniq [OPTION]… [INPUT [OUTPUT]]
OPTION:
-c:統計重復的行;
-d:僅顯示重復的行;
-i:忽略大小寫;
-u:僅顯示不重復的行;
(1)統計文件是每一重復行的數量;
注意上面的結果,并沒有達到目的,是因為uniq命令只能針對相鄰的相同的行進行去重,所以在去重前要先對文件的內容進行排序;
四、獲得幫助
1、內建命令:help COMMAND
2、外部命令
1)COMMAND –help
2)手冊:manual
使用man命令來查看手冊內容;
手冊的段落:
NAME:命令名稱
DESCRIPTION:命令功能的詳細描述
OPTION:所有選項
SWOPSIS:使用格式
EXAMPMLES:使用示例
FILES:與當前命令相關的配置文件
SEE ALSO:可參考的其它手冊
幫助中的格式字串:
[]:可省略
<>:不可省略
|:二選一或多選一
…:同類內容可以出現多個
man使用的機制:
翻屏:
空格鍵:向文件尾部翻一屏
b:向文件首部翻一屏
回車鍵:向文件尾部翻一行
k:向文件首部翻一行
Ctrl+d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
字串搜索:
/keyword:從上到下搜索
?keyword:從下到上搜索
n:顯示找到的下一個
N:顯示找到的上一個
退出:
q
man能夠為除命令之外的配置文件、系統調用、庫調用等都能提供手冊,它們分別位于不同的章節中。
1:用戶命令
2:系統調用
3:庫調用
4:設備文件
5:配置文件
6:游戲
7:雜項
8:管理命令
whatis命令
whatis COMMAND 查看命令相關的man章節
注意:whatis根據數據庫執行查找操作,此庫為系統定期更新,可使用makewhatis進行手動更新。
3、info命令:獲取在線文檔
僅在man手冊無法獲取到足夠信息,或想了解程序的開發歷史時才使用info。
4、很多應用程序都自帶有幫助文檔:/usr/share/doc
ChangLog:程序版本升級的變動情況;
INSTALL:安裝方法說明;
README:程序說明信息;
5、主流發行版官方文檔
6、google
原創文章,作者:petmaster,如若轉載,請注明出處:http://www.www58058.com/2883