1、Linux系統的特征
-
開源免費:
開源:開放源代碼,指的是底層的源代碼是可以開放出來,給相關的開發者,根據實際的需求做出修改的。
免費:不花錢,自由傳播。
? Linux是一種免費使用和自由傳播的類似于UNIX操作系統,其中包括真正的多任務、共享庫、需求裝載、程序執行、優秀的內存管理以及 TCP/IP網絡支持等。
? Linux的基本思想有兩點:第一,一切都是文件;第二,每個文件或者目錄都有確定 的用途。其中第一條詳細來講就是系統中的所有都歸結為一個文件,包括命令、硬件和軟件 設備、操作系統、進程等等
2、文本編輯器
vi/vim命令:
? 作用:創建文件、編輯文件、查看文件
? 格式:vi/vim 文件名
? 備注:如果文件不存在,就會創建;如果文件存在,就可以進行編輯或查看
面試點:vi/vim進行文件操作時,會經歷幾種模式? 3種
命令模式:vi/vim 文件名 ——>命令寫完后,按下回車鍵,相當于打開了這個文件
編輯模式:需要按下i或a鍵,進入到編輯操作
末行模式:當編輯完成后,按下esc鍵退出編輯模式
可以使用的參數:
:wq:保存并退出
:wq!:強制保存并退出
:w:保存
:q:退出
:q!:強制退出
dd 刪除一行文字
x 刪除一個字符
:行數 光標跳轉到指定的行
$ 光標跳轉到行尾
G 光標跳轉到末尾(最后一行的首個字符)
/關鍵詞 從光標所在的當前位置開始查找和該關鍵詞相關的數據(就近原則)
備注:文本文件格式:文件名.文件的后綴 1.txt 2.doc 3.iso…Linux系統中文件可以沒有后綴
3、Linux常見的操作命令
學習技巧:①命令的作用 ②命令的語法 ③命令和參數結合的作用
-
Linux系統中管理文件和目錄的操作命令
-
pwd 打印(顯示)當前所在的路徑(目錄)
? [root@localhost ~]# pwd
? /root
-
cd 切換目錄(改變路徑)
? 格式:cd 目錄(注意好目錄路徑)
? 例:切換到home目錄下:cd /home
-
cd… 返回上一級目錄(退出當前所在的文件夾)
例:/a/b/c/d ——>cd… ——>/a/b/c
-
cd 返回當前用戶的主目錄(家目錄)
root用戶:cd——>/root
普通用戶:cd——>/home/用戶名目錄
-
? 綜合練習:Linux系統中更改網絡配置
? a.先進入存放網絡配置文件的目錄:/etc/sysconfig/network-scripts
? cd /etc/sysconfig/network-scripts
? b.編輯網絡配置文件:一般是目錄下的第一個文件
? c.修改ONBOOT=yes,開啟網絡自啟動連接
? d.重啟網絡服務:service network restart (可選可寫)
- ls 查看(顯示)目錄下的內容
? 格式一:ls 查看當前目錄下的內容
? 格式二:ls 目錄名 查看指定目錄下的內容
? 格式三:ls 參數 目錄名/文件名
參數:
- ls -a 查看目錄中所有的內容,包括隱藏文件
- ls -l 查看目錄下每個文件或文件夾的詳細細節屬性(權限,大小,創建/修改時間,所屬的用戶)
? 備注:如果-l后面寫的是一個文件名:查看該文件的屬性;如果-l后面寫的是一個目錄名:查看該目錄下的每一個文件和文件夾的屬性
- ls -r:逆向顯示查看的內容
- ls -R:不僅查看目錄下的內容,還把子目錄(嵌套目錄)的內容一并做查看
? 例:ls -R /home 查看home目錄下的內容,包括子目錄(嵌套目錄)的目錄
- ls -al:查看目錄中所有(包含隱藏)文件和文件夾的屬性信息
- cat 顯示文本的內容
? 格式:cat 文件名
? -n:顯示行數 cat -n 文件名
? 備注:當命令和參數做結合時:Linux命令 參數 其他
- touch 創建空白的文件
? 格式:touch 文件名
? 一次創建多個文件:touch 文件名1 文件名2 文件名3…
- grep 在文件中進行關鍵字數據查找操作
? 格式:grep 關鍵字 文件名
? 默認查找是區分大小寫
? -n:顯示行數+內容,寫法:grep -n 關鍵字 文件名
? -i:不區分大小寫,寫法:grep -i 關鍵字 文件名
- cp 復制文件
? 格式:cp 源文件(要復制的文件) 目標文件(復制到的地方)
? a.復制當前目錄下的文件到指定的位置
? b.復制的文件沒有在當前目錄下,需要把文件路徑寫完整
? c.復制文件也支持重命名操作
? d. ***** 任意,所有的意思—–>.txt 所有的后綴是.txt文件 f.doc f開頭的,后綴是.doc的所有文檔 t.:t開頭所有文件, . :所有文件
? 例:將桌面中所有后綴是.txt的文檔,復制到boot目錄
? 參數: -i:復制的文件到指定的位置,如果有同名的,會提示是否覆蓋(默認)
? -v:顯示復制的進度
? -r:復制目錄
- mv 移動(剪切)文件和目錄
格式:mv 源文件 目標文件
? -i 覆蓋的友好提示(默認)
? -v 移動的進度
? -f 強制移動
- mkdir 創建目錄
? 格式:mkdir 目錄名 目錄2 目錄3…
? 創建嵌套的目錄:mkdir -p 目錄名1/目錄名2/目錄名3…
- rmdir 刪除空目錄
? 格式:rmdir 目錄名 目錄名2 目錄名3…
擴展:-p 刪除指定目錄,如果指定目錄被刪除后,它的上一級目錄為空,也會一并刪除
- rm 刪除文件
? 格式:rm 文件名 文件名2 文件名3…
? -i 刪除時給出確認提示(默認)
? -f 強制刪除
? -v 刪除的進度
? -r 刪除目錄(空+非空)
? -rf 強制刪除目錄
4、線上查詢命令
-
man 用來查看某個Linux命令的注意事項(幫助文檔)
格式:man Linux命令
按下q鍵退出查看
-
locate 定位文件或目錄
? 格式:locate 關鍵詞 顯示文件或目錄名中包含該關鍵詞的位置(名字)
- whatis 查看Linux命令的作用
? 格式:whatis Linux命令
5、Linux系統實現對文件或目錄的壓縮(打包)或解壓縮的操作
- bzip2 對文件進行壓縮
? 格式:bzip2 文件名 文件名2 文件名3…
? 產生壓縮文件后綴:XXX.bz2
- bunzip2 對.bz2的壓縮包進行解壓
? 格式:bunzip2 文件名1.bz2 文件名2.bz2 文件名3.bz2…
- gzip 壓縮文件
? 格式:gzip 文件名 文件名2 文件名3…
? 產生壓縮文件后綴:XXX.gz
- gunzip 對.gz的壓縮包進行解壓
? 格式:gunzip 文件名.gz 文件名2.gz 文件名3.gz…
? gzip -r 目錄名 對目錄中所有的文件進行壓縮.gz
? gunzip -r 目錄名 對目錄中所有的.gz文件進行解壓操作
-
tar 對文件或目錄進行壓縮和解壓縮操作
-
tar實現對目錄的壓縮操作(默認)
格式:tar 參數 壓縮后文件的名字.tar 目錄名
參數:
? -c 壓縮
? -x 解壓縮
? -t 在不進行解壓的情況下,查看tar壓縮包的內容
? -z 代表gzip
? -j 代表bzip2
? -v 顯示壓縮或解壓縮的進度過程
? -f 指定名字
目錄壓縮:-cvf
目錄的解壓縮(.tar壓縮包):-xvf
-
tar實現對目錄的解壓縮操作:tar -xvf 壓縮包名字.tar
-
可以將多個目錄,壓縮在同一個壓縮包:tar -cvf 壓縮包名字.tar 目錄名1 目錄名2 目錄名3…
-
tar實現對文件的壓縮:
格式一:tar -czvf 壓縮后文件名.tgz 文件名 ——>tar+gzip
格式二:tar -cjvf 壓縮后文件名.tbz 文件名 ——>tar+bzip2
-
tar實現對文件的解壓縮:
格式一:tar -xzvf 壓縮包名.tgz
格式二:tar -xjvf 壓縮包名.tbz
-
-tvf:查看tar包中的內容(不解壓)
格式:tar -tvf 壓縮包名.tar
-
- 對目錄和文件的操作命令:
? cat 顯示文本/文件的內容 -n 顯示行號
? touch 文件 創建
? grep 關鍵詞 文件名 從文本中查看和該關鍵詞相關的數據 -n 顯示行號 -i 忽略大小寫
? cp 復制文件 -r 復制目錄
? mv 移動文件和目錄
? mkdir 創建目錄
? rmdir 刪除空目錄
? rm 刪除文件 -r 刪除目錄 -f 強制刪除
- 線上查詢命令
? man Linux命令 查看該命令的使用方式
? whatis Linux命令 查看命令的作用
? locate 關鍵詞 查看名字中包含該關鍵詞的文件或目錄(名字)
- 壓縮和解壓縮
? bzip2 文件 ——>XXX.bz2 壓縮
? bunzip XXX.bz2 解壓縮
? gzip 文件 ——>XXX.gz 壓縮
? gunzip XXX.gz 解壓縮
- tar命令:
? 對目錄壓縮:tar -cvf 壓縮名.tar 目錄名
? 對目錄解壓縮:tar -xvf 壓縮名.tar
? 對文件壓縮:
? 格式一:tar -czvf 壓縮名.tgz 文件名
? 格式二:tar -cjvf 壓縮名.tbz 文件名
? 對文件解壓縮:
? 格式一:tar -xzvf 壓縮名.tgz
? 格式二:tar -xjvf 壓縮名.tbz
- 文件閱讀命令
? ①head 查看文件頭部內容(前十行)
? 格式:head 文件名
自定義查看行數:head -行數 文件名
注意:空行/空格也算作一行
? ②tail 查看文件尾部的內容(默認后十行)
? 格式:tail 文件名
自定義查看行數:tail -行數 文件名
? ③more 分頁查看
? 格式:more 文件名
? 翻頁查看:向下:空格鍵 向上:B 鍵 退出:q
設置每頁顯示的行數:more -行數 文件名
從指定的位置開始分頁查看:more +行數 文件名
例:從10行開始看 more +10 文件名
了解:more +/關鍵詞 文件名 從文件中定位該關鍵詞相關的數據,第一次出現的位置,并從該位置的前兩行開始,把剩下的內容進行分頁查看
| 管道符:將前面命令結果的輸出,當作后面命令的輸入
例:Linux命令1 | Linux命令2 ——>將命令1的結果,交給命令2進行“二次加工”
例:將etc目錄下所有文件和目錄的詳細屬性信息進行分頁查看,每次查看5行
- 定位,查找文件命令
? ①which Linux命令 查找和該命令相關的文件
? 注意:查找到一個,就會立刻停止
? ②whereis Linux命令/程序名 查找和該命令或程序相關的文件
? -b 只查找命令或程序相關的可執行文件(二進制文件)
? -m 只查找命令或程序相關的幫助說明文檔
- Linux系統中管理使用者和設置權限的命令
? ①useradd 添加用戶
? 格式:useradd 用戶名
? ②passwd 修改/設置密碼
? 格式:passwd 用戶名
? ③userdel 刪除用戶
? 格式:userdel 用戶名 刪除用戶,但是用戶相關的目錄會保留在home目錄下
? userdel -r 用戶名 徹底刪除用戶
? ④su 切換用戶
? 格式一:su 用戶名 切換用戶,但是新用戶使用的系統環境還是由上個用戶所保留的
? 格式二:su -l 用戶名 切換用戶,同時把新用戶的環境一并切換進來
-
權限
- 權限構成的總長度:10位
- 權限劃分成四組來進行分析:
第一組 占一位 表示的是文件的類型 -:文本文件 d:目錄或文件夾 第二組 占三位 表示的是文件擁有者的權限、文件主人、文件所屬者的權限 用u表示 第三組 占三位 表示的是和文件擁有者同組成員的權限 用g表示 第四組 占三位 表示的是其他人的權限 用o表示 權限的類型:
- r 讀的權限
- w 寫的權限
- x 執行(運行)的權限
- rwx:可讀可寫可執行 如果沒有該權限,會用 - 直接替代
? 語法:chmod 用戶身份(ugo)+權限 文件名/目錄名 添加權限
? 方法一:權限的修改操作:+ 添加權限 - 去掉權限 = 重新賦予權限
? 例:將所有人的權限改為可讀可寫可執行:chmod a=rwx file.txt
? 方法二:數字修改法:r—讀—4 w—寫—2 x—執行—1
? 格式:chmod 三個數字 文件名/目錄名 三個數字分別代表的是u g o
? 例:chmod 765 file.txt ——>rwx rw- r-x
- chown 更改文件的擁有者
? 格式:chown 用戶名 文件名
- chgrp 更改文件所屬的群組
? 格式:chgrp 用戶名 文件名
注意:上述操作,只有root用戶(系統管理員)才能進行操作
- 有關關機和查看系統信息的命令
? ①exit 退出
? 注意:直接退出終端窗口(界面),如果前期有切換用戶的操作,可以退出用戶切換記錄
? ②重啟 reboot
? shutdown -r now|時間點11:30
? ③關機 halt
? shutdown -h now|時間點11:30
? 擴展:shutdown -t 分鐘數 在指定分鐘數內進行關機
? ④查看進程信息
? 進程:指的是系統一個個正在運行的程序
? ps:靜態查看進程信息
? top:動態查看進程信息
? PID屬性:進程ID,系統給每一個正在運行的程序分配的序列號,唯一
? 按下q鍵,終止進程信息的查看
? ps u 列出進程的使用者(user)
? ps x 列出所有進程的pid(進程號)
? ⑤kill 結束進程
? 格式:kill PID
? ⑥date 顯示系統日期和時間
? date -r 文件名 #查看該文件最后一次修改的時間
? date -s 時間點11:30 #修改時間
? date -u 查看格林尼治時間
? ⑦cal 日歷 默認顯示當前月份
? cal 年份 #顯示指定年份日歷數據
? cal 月份 年份 #顯示指定年中月份數據
-
磁盤操作空間命令
①df a 查看磁盤(文件系統)的使用情況
②du -ab 查看文件或目錄所占的磁盤空間(文件或目錄大小)
例:du -ab /etc #查看etc目錄下每個文件或文件夾所占的磁盤空間
-
網絡操作命令
? ①ip addr 查看網絡配置信息(IP)
? 修改網絡配置文件:vi /etc/sysconfig/network-scripts/ifcfg-ens33 ——>ONBOOT=yes 開啟網絡自連接
? ②ping 檢測網絡通不通
? 格式一:ping 域名(網站的名字) 例:ping www.baidu.com
? 格式二:ping ip地址 檢測當前主機與IP對應的目標主機之間是否能夠進行通信 例:ping 10.9.6.23
? ③netstat 查看/顯示網絡的使用情況(狀態) 了解
? 類似于查看網絡訪問/使用的歷史記錄
- 其他命令
? ①clear 清屏
? ②echo 輸出
? 格式:echo “輸出的內容”
? ③uptime 顯示系統運行的時間
? ④wc 統計一個文本的行數、字數、字節數
? 格式:wc 文件名
? -l 行數
? -w 字數
? -c 字節數
? 字數統計算法:是以字符為整體來統計的,例:
? 第一行:軟件測試—–>這四個字是連在一個整體,這一個整體會認為是一個字
? 第二行:test testing ——>這是兩個字
綜合練習:Linux系統中更改網絡配置
? A.先進入存放網絡配置文件的目錄:/etc/sysconfig/network-scripts
? cd /etc/sysconfig/network-scripts
? B.編輯網絡配置文件:一般是目錄下的第一個文件 vi ifcfg-ens33
? C.修改ONBOOT=yes,開啟網絡自啟動連接
? D.重啟網絡服務:service(服務) network(網絡) restart(重啟)(可選可寫)
小總結
- 文本編輯器 vi vim 注意:操作流程
? 命令模式—>按下i或a—>編輯模式—>按下esc—>末行模式
- Linux系統對文件和目錄管理操作命令:
? pwd cd Ls -R cat touch grep -n行號 cp -r mv mkdir(創建文件夾) rmdir rm -rf(刪除)
- 線上查詢命令
? man locate whatis
注意:locate定位文件、目錄,對于新產生的文件和目錄,是有延遲性;如果想要獲取新產生的文件、目錄,可以借助于updatedb:更新系統的數據庫
- 壓縮和解壓縮命令
? bzip2 文件 .bz2 —>bunzip2
? gzip 文件 .gz —>gunzip
? tar 參數:
? 目錄:cvf 壓縮 xvf解壓縮
? 文件:czvf cjvf 壓縮 xzvf xjvf解壓縮
? tvf:在不進行解壓的情況下,查看壓縮包的內容
- 文件閱讀命令
? head tail more
- 文件定位,查找命令
? which whereis
- 設置權限和管理使用者命令
? useradd userdel passwd su chmod chown chgrp
- 關機和查看系統信息命令
? exit reboot halt ps top(查看信息) kill(結束) date(查看日期) cal(查看日歷)
- 查看磁盤空間操作命令
? du(查看文件每個目錄的大小) df
- 網絡操作命令
? 【ip addr】 ping netstat
- 其他命令
? clear echo uptime wc