---恢復內容開始---
一、Linux系統的結構
1、Linux是一個倒樹型結構,最大的目錄名稱為“/”(根目錄)
2、Linux系統的二級目錄
/bin ##binary二進制可執行文件,系統常規命令
/boot ##啟動目錄,存放系統自動啟動文件,內核,初始化程序
/dev ##系統設備管理文件
/etc ##大多數系統配置文件存放路徑
/home ##普通用戶家目錄(/home/student)
/media ##臨時的掛載點
/lib ##函數庫
/lib64 ##64位函數庫(含有.bll)
/mnt ##臨時掛載點
/run ##自動臨時設備掛載點(u盤)
/opt ##第三方軟件安裝的位置
/sbin ##系統管理命令,通常只有root可以執行
/proc ##系統硬件信息和系統進程信息~~~~
/srv ##系統數據目錄
/var ##系統數據目錄
/sys ##內核相關數據
/usr ##用戶相關信息數據
/tmp ##臨時文件產生目錄
/root ##超級用戶家目錄
***使用mount命令來更改臨時設備的掛載點***
二、文件管理命令
1、文件的建立
命令:touch filename ## 通常用來創建文件,也可以修改文件的時間戳
注釋:時間戳分為atime、mtime、ctime
atime :文件內容被訪問的時間標識
mtime :文件內容被修改的時間標識
ctime :文件屬性或文件內容被修改的時間標識
實例:使用*** touch file *** 建立一個名為file的文件,並使用stat命令進行查看
- 若進行文件的查看后,則訪問時間將會被改變,結果如下:
- 若文件進行編輯后,則訪問時間、修改時間和文件改變時間三者均會變化,結果如下:
注意:使用*** touch --help ***進行其他參數的查看
2、目錄的建立
命令:mkdir directory ## 用來建立名為directory的目錄
mkdir -p test/redcat/linux ## -p 進行多級目錄的創建
注釋:也可使用 mkdir --help命令進行參數的查看
實例:使用*** mkdir niu ***創建一個目錄名為niu,結果如下:
- 多級目錄創建結果如下:
3、文件的刪除
命令:rm file ## 進行文件的刪除
rm -f test ## -f 為強行刪除文件
實例:使用*** ls file ***命令刪除文件file,結果如下:
4、目錄的刪除
命令:rm -r directory ## -r表示遞歸刪除所有內容
rm -r -f dir ## 刪除目錄不再提示
rm -rf dir ## j結果與上一個相同,且有 -a -b -c= - abc = - cba
實例:使用*** rm -rf test*** 刪除test目錄以及test目錄下的所有內容,結果如下:
5、文件編輯
- gedit 編輯器
命令:gedit file ## 必須有圖形界面,進行file文件的編輯
- vim 編輯器
命令:vim file ------> 按 i 進入insert 模式 ------> 書寫內容 ------> esc退出insert模式 - -----> wq退出並保存
實例:gedit使用(使用以下命令即可打開file文件,並進行編輯)
- 使用vim.tiny實例應用如下:(vim 和vim.tiny功能類似)
###### 使用vim 會出現異常情況 ######
當vim異常退出時,會生成.file.swp文件(原因是修改文件未保存)
當helloc未保存后再次打開時,會出現以下情況:(下面文字接着圖的more)
Swap file ".hello.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:
只讀打開 繼續編輯 恢復數據 刪除swap文件 退出
分析:無論按【o】【e】【r】【q】【a】任何一個都不會刪除.swp文件,再次打開還會
有這樣的這個問題,直到按【D】后,.swp被刪除,vim恢復正常。
6、文件的復制(復制目錄的時候用- r)
命令:cp sourcefile objectfile ## 表示把遠文件復制到目標文件
cp -r 源目錄 目的地目錄
cp 源文件1 源文件2 目的地目錄 ## 目的地目錄必須存在
cp -r 源目錄1 源目錄2 目的地目錄 ## 目的地目錄必須存在
實例:把file文件中的內容復制到file1中,結果如下:
- 使用 *** cp -r test test1 ***命令把test目錄下內容復制到test1目錄中,結果如下:
- 使用 *** cp file1 file2 dir ***命令,把file1和file2文件復制到目錄dir下,結果如下:
- 使用*** cp -r dir dir1 dir2 ***把目錄dir1和dir2復制到目錄dir3下,結果如下:
7、文件的移動
命令:mv 源文件 目的地文件 ## 重命名
mv 源目錄 目的地目錄
實例:使用*** mv file file1***命令,把file重命名為file1,結果如下:
使用*** mv niu/file test/ ***把niu目錄下的file文件移動到test目錄中,結果如下:
(.代表當前目錄)例:把test目錄下的file1復制到當前目錄下,命令如下:
注意:相同磁盤的文件移動是重命名的過程,不用磁盤的移動是復制刪除的過程。
8、文件的查看
命令:cat filename ## 表示查看文件的全部內容
cat -b filename ## 查看內容並顯示行號
less filename ## 分頁瀏覽(以下命令在less命令之后的操作)
上|下 ## 逐行移動
pageu|pagedn ## 逐頁移動
/關鍵字 ## 高亮顯示關鍵字,n向下匹配,N向上匹配
v ## 進入vim模式,然后按i進行編輯,返回vim模式按esc
q ##退出vim模式
實例:使用*** cat file1***命令查看file1中的內容,結果入下:
- 查看內容並顯示行號,結果如下:
- less 命令既修改文件中的內容,也可以使用快捷鍵進行查找,在此就不放截圖了。
9、文件的尋址
相對路徑:
相對與當前系統所在的目錄的一個文件名稱的簡寫;
此名稱省略了系統當前所在目錄的名稱;
此名稱不以“/”開頭;
此名稱在命令執行時會自動在操作對象前加入"pwd”所顯示的值。
絕對路徑:
絕對路徑是文件在系統中的真實位置;
此命令以“/”開頭;
此命令在執行時不會考慮現在的位置的信息。
注意:當操作對象是 對象1 空格 對象2 時,這兩個對象沒有任何關系
親 ## 動作時被系統執行,不能作為名稱出現
“親” ## 引號的作用是把動作變成名稱字符,這種方法叫引用
pwd ## 顯示當前工作目錄
10、自動補齊
《tab》
系統中的《tab》鍵可以實現命令的自動補齊;
可以補齊系統中存在的命令,文件名稱,和部分命令的參數;
當一次《tab》補齊不了時,代表以此關鍵字開頭的內容不唯一;
可以使用《tab》兩次來列出所有一次關鍵字開頭的內容散
三、關於路徑的命令
ls --help ## 用來查看關於ls的所有參數
touch .file ## 建立一個隱藏文件.file,使用*** ls*** 顯示不出來
注意:若是建立一個目錄為 -a ,則刪除的時候使用*** rm -rf ./-a ***來進行刪除
實例:
1、顯示路徑
命令:pwd ## 顯示的是絕對路徑
2、切換路徑
命令:cd - ## 當前目錄和當前目錄之前所在目錄之間的切換
cd .. ## 進入當前目錄的上級目錄
cd ~ ## 進入當前用戶家目錄
cd ~user ## 進入user家目錄
cd 目錄名 ## 進入到制定目錄中
cd ~+ ## 表示跳轉到當前目錄
cd ~- ## 跳轉到當前用戶之前的目錄
實例:使用***cd - ***命令切換在/etc和/home/niu123進行切換,結果如下:
- 使用*** cd .. ***命令,使當前目錄切換到上一層/home目錄,顯示如下:
- 使用***cd ~***命令切換到當前用戶家目錄,如下:
- 使用***cd ~niu123***命令,同樣可以切換到niu132家目錄(也可切換到其他用戶名):
- 使用 ***cd 目錄名***可以任意切換到指定得目錄中,顯示如下:
- 使用命令***cd ~-***切換到上一個目錄(與cd -相似),cd ~+切換到當前目錄:
2、路徑的查看
命令:ls ## 顯示當前目錄下的所有內容
ls -l file ## 文件的屬性
ls dir ## 目錄中包含的內容
ls -d dir ## 目錄本身(list directory)
ls -a dir ## 顯示所有文件包含隱藏的(all)
ls -S dir ## 查看並且按大小排序
ls -ld ## 表示的是目錄本身的屬性
ls -R ## 顯示當前所在文件的所有文件和對應目錄的子目錄
實例:使用命令*** ls -S Desktop***從大到小排序並顯示
- 使用***ls -R ***分級顯示文件和目錄對應的子目錄
(在這就只顯示着兩個參數的結果,其他參數結果請回看“上一篇:Linux虛擬機基本操作”)
4、文件查看
命令:cat ## 輸出文件全部內容
less ## 分頁瀏覽
head file ## 查看文件的前十行
head -n 3 file ## 查看文件的前3行
tail file ## 查看文件的后十行
tail -n 3 file ## 查看文件的后三行(數字是可以改變的)
tail -f file ## 監控文件后十行內容的變化
實例:由於前面寫過cat和less基本用法,這就不演示了。主要是head和tail的簡單操作,
使用命令*** head /etc/passwd ***顯示/etc/passed文件的前十行內容:
- 使用命令*** head -n 3 /etc/passed ****顯示文件的前三行內容:
- 使用命令*** tail /etc/passwd***顯示文件的后十行內容:
- 使用***tail -n 2 /etc/passwd ***命令顯示文件后兩行內容:
- 使用 ***tail -n 3 -f file ***來監控文件后3行的變化:
注意:使用*** tail -f ***命令進行監控時,首先要打開一個終端,輸入監控命令;然后再桌
面上打開另一個終端,利用echo進行輸入;此時就可以在第一個終端出看到輸入的字符
了。若在第二個終端使用vim編輯器進行編輯,則在第一個終端不會看到相應的變化;這
時可以用watch命令進行監控。
5、文件大小統計
命令:wc filename ## 顯示文件基本信息
wc -l filename ## 顯示文件內容的行數
wc -c filename ## 顯示文件的字節數
wc -m filename ## 顯示文件字符數
wc -w filename ## 顯示文件內容的單詞數
實例:顯示文件file的基本信息:
其中,9表示文件的行數,10表示單詞數,66表示字符數,file為文件的名字。
- 使用命令*** wc -l file ***顯示文件file的行數,結果如下:
- 使用命令分別顯示file的字節數、字符數、單詞數,結果如下:(由於內容均為字母,
一個字符是一個字節,故其結果是相同的)
四、系統中歷史記錄的調用
命令:histroy ## 查看歷史記錄
history -c ## 清空當前環境中的歷史
!數字 ## 調用此行歷史,比如!5時表示執行歷史中第五條指令
!test ## 執行以test關鍵字開頭的最近一條歷史
ctrl+r+關鍵字 ## 會調用最近一條含有關鍵字的命令
實例:使用history查看歷史記錄
- 使用*** !2 ***查看第二條命令並執行的結果如下:
- 使用關鍵字查看,其結果是顯示ls開頭的歷史記錄,即第13條記錄的結果:
- 使用***ctrl + r + cd***查詢有關最近一條有關cd的命令並顯示結果:
- 使用*** history -c***進行歷史記錄的清除:
五、系統中獲取幫助的方法
1、查看命令的用途
命令:whatis 命令 ##查看命令的用途
實例:對cat命令進行查看
2、查看命令的用法
命令: --help ## 查看命令的基本用法,適用於多數命令
標識符:【】 ## 表示選項可以加也可以不加
... ## 表示選項加入的個數是任意的
<> ## 表示選項是必須要加的
usage ## 表示命令用法
Options ## 對參數的作用作說明
3、查看命令或文件的說明手冊
命令:man 命令 ## 查看命令的說明和用法
man 5 文件 ## 查看文件的說明
注意:man的級別有九種(1命令;2系統調用接口;3函數庫調用接口;4特殊設備
文件;5系統配置文件;6為游戲規則說明;7包說明;8系統管理命令;9內核
調用說明);配置文件的編寫用man(manual)
man基本用法:
上|下 ## 逐行查看
pgup|pgsn ## 分頁查看
/關鍵字 ## 高亮顯示
:q ## 表示退出
man -k 字符串 ## 查看當前字符串在系統中擁有的man級別
man man ## 查看man的相關內容
六、系統中通用配置
* ## 表示匹配多個字符
? ## 表示匹配單個字符
[[:alpha:]] ## 匹配單個字符
[[:lower:]] ## 單個小寫字母
[[:upper:]] ## 單個大寫字母
[[:digit:]] ## 單個數字
[[:punct:]] ## 單個符號
[[:space:]] ## 單個空格
[[:alnum:]] ## 單個數字和字母(除了用[![:alnum:]]表示)
[1-9] ## 表示1位,是1-9中任意數字
[!3-5] ## 1位,不是3-5的數字
[^3-5] ## 與上述情況相同
[a-z] ## 1位,a-z的任意字母
{1..3} ## 3個,表示1,2,3
{1,3,5} ## 三個,表示1,3,5
實例:建立文件file1-file6結果如下:(兩種方式,文件建立的時候必須是精確的)
- 使用單個字符進行刪除,如下圖所示,rm -rf file[1-2]刪除file1和file2;
rm -rf file[!1-2]則刪除不是file1和file2的其他file{3,4,5,6}。
- 命令*** rm -rf fi* ***刪除文件以fi開頭的所有文件;*** rm -rf test[[:digit:]]***表示
刪除以test開頭最后一個字符為數字的文件
作業一
1、用一條命令建立12個文件WESTOS_classX_linuxY(X取值范圍1-2,Y取值范圍為1-6)
這些文件都包含在root用戶桌面的study目錄中;
2、用一條命令建立8個文件redhat_versionX(X的范圍1-8),且文件包含在/tem目錄下的
VERSION中;
3、用一條命令把redhat_versionX中帶奇數的文件復制到桌面的SINGLE中;
4、用一條命令把redhat_versionX中帶偶數的文件復制到桌面的SOUBLE中;
5、用一條命令把WESTOS_classX_linuxyY中class1的文件移動到桌面的LCASS1中;
6、用一條命令把WESTOS_classX_linuxyY中class2的文件移動到桌面的LCASS2中;
7、備份/etc目錄中名字帶數字且以.conf結尾的文件到桌面上的confdir中;
8、刪除掉剛建立或備份的所有文件
---恢復內容結束---