Linux的使用_尚硅谷视频学习笔记
到達(dá)底部
文章目錄
- Linux的使用
- 參考
- 第 1 章 Linux 開山篇
- 1.1 本套 Linux 課程的內(nèi)容介紹
- 1.2 Linux 的學(xué)習(xí)方向
- 1.3 Linux 的應(yīng)用領(lǐng)域
- 1.3.1個(gè)人桌面應(yīng)用領(lǐng)域
- 1.3.2服務(wù)器應(yīng)用領(lǐng)域
- 1.3.3嵌入式應(yīng)用領(lǐng)域
- 1.4 學(xué)習(xí) Linux 的階段(高手進(jìn)階過程)
- 1.5 Linux 的學(xué)習(xí)方法和建議(很重要)
- 第 2 章 基礎(chǔ)篇 Linux 入門
- 2.1 Linux 介紹
- 2.2 unix 是怎么來的
- 2.3 Linux 是怎么來的
- 2.3.1 GNU,人機(jī)交互
- 2.4 linux 和 unix 關(guān)系一覽圖
- 2.5 linux 和 Windows 比較
- 2.5.1 工作中Linux的使用場景
- 第 3 章 基礎(chǔ)篇 VM 和 Linux 系統(tǒng)(CentOS)安裝
- 3.1 vm Centos
- 3.2 vm 軟件和 CentOS 的安裝軟件
- 3.3 VM 安裝的步驟
- 3.4 CentOS安裝的步驟
- 3.5 CentOS 的終端使用和聯(lián)網(wǎng)
- 3.6 vmtools 安裝
- 3.6.1介紹
- 3.7 vmtools 的安裝和使用
- 3.7.1安裝 vmtools 的步驟說明
- 3.7.2使用 vmtools 來設(shè)置 windows 和 linux 的共享文件夾
- 3.7.3安裝 vmtools 的課堂練習(xí)
- 3.7.4 安裝vmtools遇到的問題
- 第 4 章 基礎(chǔ)篇 Linux 的目錄結(jié)構(gòu)
- 4.1 基本介紹
- 4.2 目錄結(jié)構(gòu)的具體介紹
- 4.3 一些理解參考
- 4.4 Linux 目錄總結(jié)一下
- 第 5 章 實(shí)操篇 遠(yuǎn)程登錄 Linux 系統(tǒng)
- 5.1 為什么需要遠(yuǎn)程登錄 Linux
- 5.1.1示意圖
- 5.1.2說明
- 5.2 遠(yuǎn)程登錄 Linux-Xshell5
- 5.3 安裝 XShell5 并使用
- 5.3.1安裝過程
- 5.3.2XShell5 的關(guān)鍵配置
- 5.3.3 XShel5 操作 Linux 系統(tǒng)
- 5.4 遠(yuǎn)程上傳下載文件 Xftp5
- 5.4.1XFtp5 軟件介紹
- 5.4.2XFtp5 軟件的安裝
- 5.4.3Xftp5 的配置和使用
- 5.4.4如何解決 XFTP5 中文亂碼的問題
- 5.5 Xftp5 和 XShell5 的使用
- 第 6 章 實(shí)操篇 vi 和 vim 編輯器
- 6.1 vi 和 vim 的基本介紹
- 6.2 vi 和 vim 的三種常見模式
- 6.2.1正常模式
- 6.2.2插入模式/編輯模式
- 6.2.3命令行模式
- 6.3 快速入門案例
- 6.4 vi 和 vim 三種模式的相互轉(zhuǎn)化圖
- 6.5 快捷鍵的使用案例
- 6.6 vim 和 vi 的快捷鍵鍵盤一覽圖
- 6.7 vi 和 vim 課堂練習(xí)
- 第 7 章 實(shí)操篇 開機(jī)、重啟和用戶登錄注銷
- 7.1 關(guān)機(jī)&重啟命令
- 7.1.1基本介紹
- 7.1.2注意細(xì)節(jié)
- 7.2 用戶登錄和注銷
- 7.2.1基本介紹
- 7.2.2使用細(xì)節(jié)
- 第 8 章 實(shí)操篇 用戶管理
- 8.1 基本介紹
- 8.2 添加用戶
- 8.2.1基本語法
- 8.2.2實(shí)際案例
- 8.2.3細(xì)節(jié)說明
- 8.3 給用戶指定或者修改密碼
- 8.4 刪除用戶
- 8.4.1基本語法
- 8.4.2應(yīng)用案例
- 8.4.3思考題
- 8.5 查詢用戶信息
- 8.5.1基本語法
- 8.5.2應(yīng)用實(shí)例
- 8.5.3細(xì)節(jié)說明
- 8.6 切換用戶
- 8.6.1介紹
- 8.6.2基本語法
- 8.6.3應(yīng)用實(shí)例
- 8.6.4細(xì)節(jié)說明
- 8.6-2 查看當(dāng)前用戶/登錄用戶
- 8.7 用戶組
- 8.7.1介紹
- 8.7.2增加組
- 8.7.3案例演示
- 8.7.4刪除組
- 8.7.5案例演示
- 8.8 增加用戶時(shí)直接加上組
- 8.8.1指令(基本語法)
- 8.8.2案例演示
- 8.9 修改用戶的組
- 8.9.1指令(基本語法)
- 8.9.2案例演示
- 8.10 /etc/passwd 文件
- 8.11 /etc/shadow 文件
- 8.12 /etc/group 文件
- 第 9 章 實(shí)操篇 實(shí)用指令
- 9.1 指定運(yùn)行級別
- 9.2 切換到指定運(yùn)行級別的指令
- 9.2.1基本語法
- 9.2.2應(yīng)用實(shí)例
- 9.2.3面試題
- 9.2.4課堂練習(xí):
- 9.3 幫助指令
- 9.3.1介紹
- 9.3.2man 獲得幫助信息
- 9.3.3 help 指令
- 9.3.4當(dāng)一個(gè)指令不熟悉如何學(xué)習(xí)的建議
- 9.4 文件目錄類
- 9.4.1pwd 指令
- 9.4.2 ls 指令
- 9.4.3cd 指令
- 9.4.4mkdir 指令
- 9.4.5rmdir 指令
- 9.4.6touch 指令
- 9.4.7cp 指令[重要]
- 9.4.8 rm 指令
- 9.4.9 mv 指令
- 9.4.10 cat 指令
- 9.4.11 more 指令
- 9.4.12 less 指令
- 9.4.13 > 指令 和 >> 指令
- 9.4.14 echo 指令
- 9.4.15 head 指令
- 9.4.16 tail 指令
- 9.4.17 ln 指令
- 9.4.18 history 指令
- 9.5時(shí)間日期類
- 9.5.1 date 指令-顯示當(dāng)前日期
- 9.5.2date 指令-設(shè)置日期
- 9.5.3cal 指令
- 9.6搜索查找類
- 9.6.1find 指令
- 9.6.2 locate 指令
- 9.6.3 grep 指令和 管道符號 |
- 9.7壓縮和解壓類
- 9.7.1gzip/gunzip 指令
- 9.7.2 zip/unzip 指令
- 9.7.3 tar 指令
- 第 10 章 實(shí)操篇 組管理和權(quán)限管理
- 10.1 Linux 組基本介紹
- 10.2文件/目錄 所有者
- 10.2.1 查看文件的所有者
- 10.2.2 修改文件所有者
- 10.3組的創(chuàng)建
- 10.3.1 基本指令
- 10.3.2 應(yīng)用實(shí)例:
- 10.4文件/目錄 所在組
- 10.4.1 查看文件/目錄所在組
- 10.4.2 修改文件所在的組
- 10.5其它組
- 10.6 改變用戶所在組
- 10.6.1 改變用戶所在組
- 10.6.2 應(yīng)用實(shí)例
- 10.7權(quán)限的基本介紹
- 10.8 rwx 權(quán)限詳解
- 10.8.1 rwx 作用到文件
- 10.8.2 rwx 作用到目錄
- 10.9文件及目錄權(quán)限實(shí)際案例
- 10.10 修改權(quán)限-chmod
- 10.10.1 基本說明:
- 10.10.2 第一種方式:+ 、-、= 變更權(quán)限
- 10.10.3 第二種方式:通過數(shù)字變更權(quán)限
- 10.11 修改文件所有者-chown
- 10.11.1 基本介紹
- 10.11.2 案例演示:
- 10.12 修改文件所在組-chgrp
- 10.12.1 基本介紹
- 10.12.2 案例演示:
- 10.13 最佳實(shí)踐-警察和土匪游戲
- 10.14 課后練習(xí)
- 10.15 課后練習(xí)題 2
- 第 11 章 實(shí)操篇 crond 任務(wù)調(diào)度
- 11.1原理示意圖
- 11.2 概述
- 11.3 基本語法
- 11.3.1 常用選項(xiàng)
- 11.4快速入門
- 11.4.1 任務(wù)的要求
- 11.4.2 步驟如下
- 11.4.3 參數(shù)細(xì)節(jié)說明
- 11.5任務(wù)調(diào)度的幾個(gè)應(yīng)用實(shí)例
- 11.5.1 案例 1:每隔 1 分鐘,就將當(dāng)前的日期信息,追加到 /tmp/mydate 文件中
- 11.5.2 案例 2:每隔 1 分鐘, 將當(dāng)前日期和日歷都追加到 /home/mycal 文件中
- 11.5.3 案例 3: 每天凌晨 2:00 將 mysql 數(shù)據(jù)庫 testdb ,備份到文件中
- 11.6 crond 相關(guān)指令:
- 第 12 章 實(shí)操篇 Linux 磁盤分區(qū)、掛載
- 12.1 分區(qū)基礎(chǔ)知識
- 12.1.1 分區(qū)的方式:
- 12.1.2 windows 下的磁盤分區(qū)
- 12.2 Linux 分區(qū)
- 12.2.1 原理介紹
- 12.2.2 硬盤說明
- 12.2.3 使用 lsblk 指令查看當(dāng)前系統(tǒng)的分區(qū)情況
- 12.3 掛載的經(jīng)典案例
- 12.3.1 如何增加一塊硬盤
- 12.4 具體的操作步驟整理
- 12.4.2 虛擬機(jī)增加硬盤步驟 2
- 12.4.3 虛擬機(jī)增加硬盤步驟 3
- 12.4.4 虛擬機(jī)增加硬盤步驟 4
- 12.4.5 虛擬機(jī)增加硬盤步驟 5
- 12.5 磁盤情況查詢
- 12.5.1 查詢系統(tǒng)整體磁盤使用情況
- 12.5.2 查詢指定目錄的磁盤占用情況
- 12.6 磁盤情況-工作實(shí)用指令
- 第 13 章 實(shí)操篇 網(wǎng)絡(luò)配置
- 13.1 Linux 網(wǎng)絡(luò)配置原理圖(含虛擬機(jī))
- 13.2 查看網(wǎng)絡(luò) IP 和網(wǎng)關(guān)
- 13.2.1 查看虛擬網(wǎng)絡(luò)編輯器
- 13.2.2 修改 ip 地址(修改虛擬網(wǎng)絡(luò)的 ip)
- 13.2.3 查看網(wǎng)關(guān)
- 13.2.4 查看 windows 環(huán)境的中 VMnet8 網(wǎng)絡(luò)配置 (ipconfig 指令)
- 13.3 ping 測試主機(jī)之間網(wǎng)絡(luò)連通
- 13.3.1 基本語法
- 13.3.2 應(yīng)用實(shí)例
- 13.4 linux 網(wǎng)絡(luò)環(huán)境配置
- 13.4.1 第一種方法(自動獲取)
- 13.4.2 第二種方法(指定固定的 ip)
- 第 14 章 實(shí)操篇 進(jìn)程管理
- 14.1 進(jìn)程的基本介紹
- 14.2 顯示系統(tǒng)執(zhí)行的進(jìn)程
- 14.2.1 說明
- 14.2.2 ps 指令詳解
- 14.2.3 應(yīng)用實(shí)例
- 14.3 終止進(jìn)程 kill 和 killall
- 14.3.1 介紹:
- 14.3.2 基本語法:
- 14.3.3 常用選項(xiàng):
- 14.3.4 最佳實(shí)踐:
- 14.4 查看進(jìn)程樹 pstree
- 14.4.1 基本語法:
- 14.4.2 常用選項(xiàng):
- 14.4.3 應(yīng)用實(shí)例:
- 14.5 服務(wù)(Service)管理
- 14.5.1 介紹:
- 14.5.2 service 管理指令:
- 14.5.3 使用案例:
- 14.5.4 細(xì)節(jié)討論:
- 14.5.5 查看服務(wù)名:
- 14.5.6 服務(wù)的運(yùn)行級別(runlevel):
- 14.5.7 開機(jī)的流程說明
- 14.5.8 chkconfig 指令
- 14.5.9 應(yīng)用實(shí)例:
- 14.5.10 ? 使用細(xì)節(jié)
- 14.6 動態(tài)監(jiān)控進(jìn)程
- 14.6.1 介紹:
- 14.6.2 基本語法:
- 14.6.3 選項(xiàng)說明:
- 14.6.4 應(yīng)用實(shí)例:
- 14.6.5 查看系統(tǒng)網(wǎng)絡(luò)情況 netstat(重要)
- 第 15 章 實(shí)操篇 RPM 和 YUM
- 15.1 rpm 包的管理
- 15.1.1 介紹
- 15.1.2 rpm 包的簡單查詢指令:
- 15.1.3 rpm 包名基本格式:
- 15.1.4 rpm 包的其它查詢指令:
- 15.1.5 卸載 rpm 包
- 15.1.6 安裝 rpm 包
- 15.2 yum
- 15.2.1 介紹:
- 15.2.2 yum 的基本指令
- 15.2.3 yum 應(yīng)用實(shí)例:
- 第 16 章 JavaEE 定制篇 搭建 JavaEE 環(huán)境
- 16.1 概述
- 16.1.1 示意圖:
- 16.2 安裝 JDK
- 16.2.1 看老師演示,一會整理筆記:
- 16.2.2 安裝步驟
- 16.2.3 測試是否安裝成功
- 16.3 安裝 tomcat
- 16.3.2 測試是否安裝成功:
- 16.4 Eclipse 的安裝
- 16.5 mysql 的安裝和配置
- 16.5.1 安裝的步驟和文檔
- 16.5.2 說明
- 一:卸載舊版本
- 二:安裝MySQL
- 三:配置MySQL
- 第 17 章 大數(shù)據(jù)定制篇 Shell 編程
- 17.1 為什么要學(xué)習(xí) Shell 編程
- 17.2 Shell 是什么
- 17.3 shell 編程快速入門-Shell 腳本的執(zhí)行方式
- 17.3.1 腳本格式要求
- 17.3.2 編寫第一個(gè) Shell 腳本
- 17.3.3 腳本的常用執(zhí)行方式
- 17.4 shell 的變量
- 17.4.1 Shell 的變量的介紹
- 17.4.2 shell 變量的定義.
- 17.4.3 ?定義變量的規(guī)則
- 17.4.4 ?將命令的返回值賦給變量(重點(diǎn))
- 17.5 設(shè)置環(huán)境變量
- 17.5.1 基本語法
- 17.5.2 快速入門
- 17.6 位置參數(shù)變量
- 17.6.1 介紹
- 17.6.2 基本語法
- 17.6.3 位置參數(shù)變量應(yīng)用實(shí)例
- 17.7 預(yù)定義變量
- 17.7.1 基本介紹
- 17.7.2 基本語法
- 17.7.3 應(yīng)用實(shí)例
- 17.8 運(yùn)算符
- 17.8.1 基本介紹
- 17.8.2 基本語法
- 17.9 條件判斷
- 17.9.1 ?基本語法
- 17.9.2 ?應(yīng)用實(shí)例
- 17.9.3 ?常用判斷條件
- 17.9.4 應(yīng)用實(shí)例
- 17.10流程控制
- 17.10.1 if 判斷
- 17.10.2 case 語句
- 17.10.3 for 循環(huán)
- 17.10.4 while 循環(huán)
- 17.11 read 讀取控制臺輸入
- 17.11.1 基本語法
- 17.11.2 應(yīng)用實(shí)例
- 17.12函數(shù)
- 17.12.1 函數(shù)介紹
- 17.12.2 系統(tǒng)函數(shù)
- 17.12.3 ?應(yīng)用實(shí)例
- 17.12.4 自定義函數(shù)
- 17.13Shell 編程綜合案例
- 第 18 章 Python 定制篇 開發(fā)平臺 Ubuntu
- 18.1 Ubuntu 的介紹
- 18.2 Ubuntu 的安裝
Linux的使用
感謝尚硅谷推出的視頻教程,感覺韓順平老師。
參考
| 1 | Linux_安裝VMWare | https://blog.csdn.net/qq_17079255/article/details/108807156 |
| 2 | Linux_安裝CentOS | https://blog.csdn.net/qq_17079255/article/details/108807160 |
| 3 | Linux命令與快捷鍵 | https://blog.csdn.net/qq_17079255/article/details/108807204 |
| 4 | Linux_/bin,/sbin,/usr/sbin,/usr/bin 目錄之簡單區(qū)別 | https://blog.csdn.net/qq_17079255/article/details/108813404 |
| 5 | vim常用快捷鍵及其功能 | https://www.cnblogs.com/wj-1314/articles/9486106.html |
| 6 | vim 快捷鍵技巧總結(jié) | https://blog.csdn.net/ithomer/article/details/6002837 |
| 7 | 菜鳥教程_Linux 教程 | https://www.runoob.com/linux/linux-tutorial.html |
| 8 | Linux中的$符號的三種常見用法 | https://blog.csdn.net/weixin_37766087/article/details/99974385 |
第 1 章 Linux 開山篇
1.1 本套 Linux 課程的內(nèi)容介紹
1.2 Linux 的學(xué)習(xí)方向
1.2.1Linux 運(yùn)維工程師
1.2.2Linux 嵌入式開發(fā)工程師
1.2.3在 linux 下做各種程序開發(fā)
1.2.4示意圖
1.3 Linux 的應(yīng)用領(lǐng)域
1.3.1個(gè)人桌面應(yīng)用領(lǐng)域
此領(lǐng)域是傳統(tǒng) linux 應(yīng)用最薄弱的環(huán)節(jié),傳統(tǒng) linux 由于界面簡單、操作復(fù)雜、應(yīng)用軟件少的缺點(diǎn),一直被 windows 所壓制,但近些年來隨著 ubuntu、fedora [f??d?:r?] 等優(yōu)秀桌面環(huán)境的興起,同時(shí)各大硬件廠商對其支持的加大,linux 在個(gè)人桌面領(lǐng)域的占有率在逐漸的提高。
1.3.2服務(wù)器應(yīng)用領(lǐng)域
linux 在服務(wù)器領(lǐng)域的應(yīng)用是最強(qiáng)的。linux 免費(fèi)、穩(wěn)定、高效等特點(diǎn)在這里得到了很好的體現(xiàn),近些年來 linux 服務(wù)器市場得到了飛速的提升,尤其在一些高端領(lǐng)域尤為廣泛。
1.3.3嵌入式應(yīng)用領(lǐng)域
近些年來 linux 在嵌入式領(lǐng)域的應(yīng)用得到了飛速的提高
linux 運(yùn)行穩(wěn)定、對網(wǎng)絡(luò)的良好支持性、低成本,且可以根據(jù)需要進(jìn)行軟件裁剪,內(nèi)核最小可以達(dá)到幾百 KB 等特點(diǎn),使其近些年來在嵌入式領(lǐng)域的應(yīng)用得到非常大的提高
主要應(yīng)用:機(jī)頂盒、數(shù)字電視、網(wǎng)絡(luò)電話、程控交換機(jī)、手機(jī)、PDA、智能家居、智能硬件等都是其應(yīng)用領(lǐng)域。以后再物聯(lián)網(wǎng)中應(yīng)用會更加廣泛
1.4 學(xué)習(xí) Linux 的階段(高手進(jìn)階過程)
linux 是一個(gè)開源、免費(fèi)的操作系統(tǒng),其穩(wěn)定性、安全性、處理多并發(fā)已經(jīng)得到業(yè)界的認(rèn)可,目前很多中型,大型甚至是集群項(xiàng)目都在使用 linux,很多軟件公司考慮到開發(fā)成本都首選 linux,在中國軟件公司得到廣泛的使用。
我個(gè)人認(rèn)為學(xué)習(xí) linux 流程為:
- 第 1 階段:linux 環(huán)境下的基本操作命令,包括 文件操作命令(rm mkdir chmod, chown) 編輯工具使用(vi vim)linux 用戶管理(useradd userdel usermod)等
- 第 2 階段:linux 的各種配置(環(huán)境變量配置,網(wǎng)絡(luò)配置,服務(wù)配置)
- 第 3 階段:linux 下如何搭建對應(yīng)語言的開發(fā)環(huán)境(大數(shù)據(jù),JavaEE, Python 等)
- 第 4 階段:能編寫 shell 腳本,對 Linux 服務(wù)器進(jìn)行維護(hù)。
- 上面時(shí)需要到達(dá)的基本要求
- 第 5 階段:能進(jìn)行安全設(shè)置,防止攻擊,保障服務(wù)器正常運(yùn)行,能對系統(tǒng)調(diào)優(yōu)。
- 第 6 階段:深入理解 Linux 系統(tǒng)(對內(nèi)核有研究),熟練掌握大型網(wǎng)站應(yīng)用架構(gòu)組成、并熟悉各個(gè)環(huán)節(jié)的部署和維護(hù)方法。
1.5 Linux 的學(xué)習(xí)方法和建議(很重要)
- 高效而愉快的學(xué)習(xí)
- 先建立一個(gè)整體框架,然后細(xì)節(jié)
- 不需要掌握所有的 Linux 指令,要學(xué)會查詢手冊和百度
- 先 know how ,再 know why
- 計(jì)算機(jī)是一門”做中學(xué)” 的學(xué)科 ,不是會了再做,而是做了才會.
- 適當(dāng)?shù)泥駠魍虠?/li>
- Linux 不是編程,重點(diǎn)是實(shí)際操作,各種常用指令要玩的溜
第 2 章 基礎(chǔ)篇 Linux 入門
2.1 Linux 介紹
- Linux 怎么讀 【里紐克斯,利尼克斯,里納克斯】
- Linux 是一款操作系統(tǒng),免費(fèi),開源, 安全,高效,穩(wěn)定, 處理高并發(fā)非常強(qiáng)悍,現(xiàn)在很多的企業(yè)級的項(xiàng)目都部署到 Linux/unix 服務(wù)器運(yùn)行。
- Linux 創(chuàng)始人-linux 林納斯
- Linux 的吉祥物
企鵝 tux
- Linux 的主要的發(fā)行版
-
目前主要的操作系統(tǒng)有
windows, android ,車載系統(tǒng),linux 等。
2.2 unix 是怎么來的
2.3 Linux 是怎么來的
2.3.1 GNU,人機(jī)交互
2.4 linux 和 unix 關(guān)系一覽圖
2.5 linux 和 Windows 比較
2.5.1 工作中Linux的使用場景
第 3 章 基礎(chǔ)篇 VM 和 Linux 系統(tǒng)(CentOS)安裝
3.1 vm Centos
學(xué)習(xí) Linux 需要一個(gè)環(huán)境,我們需要創(chuàng)建一個(gè)虛擬機(jī),然后在虛擬機(jī)上安裝一個(gè) Centos 系統(tǒng)來學(xué)習(xí)。
1)先安裝 virtual machine ,vm12
2)再安裝 Linux (CentOS 6.8)
3)原理示意圖,這里我們畫圖說明一下 VM 和 CentOS 的關(guān)系。
3.2 vm 軟件和 CentOS 的安裝軟件
3.3 VM 安裝的步驟
看老師的具體演示:因?yàn)槔蠋煹碾娔X上已經(jīng)安裝了 VM12,因此我先卸載然后再安裝
Linux_安裝VMWare
3.4 CentOS安裝的步驟
這里在配置網(wǎng)絡(luò)連接時(shí),有三種形式,需要大家伙注意 :
- 1 橋接模式: 會給虛擬機(jī)上的Linux系統(tǒng)分配當(dāng)前網(wǎng)絡(luò)的ip地址,能夠同其他系統(tǒng)通信。
- 2 NAT : 會給虛擬機(jī)上的Linux系統(tǒng)分配一個(gè)不同的網(wǎng)段ip地址,此時(shí)虛擬機(jī)上的Linux 可以訪問外部(通過自己的windows上的ip代理出去),但是外部的其他機(jī)器不能訪問虛擬機(jī)上的Linux系統(tǒng)。
- 3 主機(jī)模式 :你的Linux是一個(gè)獨(dú)立的主機(jī),不能訪問外網(wǎng)。
開始安裝系統(tǒng)(CentOS6.8)
看老師安裝的演示過程。
參考: Linux_安裝CentOS
3.5 CentOS 的終端使用和聯(lián)網(wǎng)
終端的使用,點(diǎn)擊鼠標(biāo)右鍵,即可選擇打開終端
編輯–>測寫首選項(xiàng)–>顏色, 可以改變顏色和背景
配置網(wǎng)絡(luò),可以上網(wǎng)。
點(diǎn)擊上面右側(cè)的;兩個(gè)計(jì)算機(jī)圖片,選擇啟用 eth0,即可成功連接到網(wǎng)絡(luò),就可以上網(wǎng)。
3.6 vmtools 安裝
3.6.1介紹
1)可以直接粘貼命令在 windows 和 centos 系統(tǒng)之間
2)可以設(shè)置 windows 和 centos 的共享文件夾
3)示意圖
3.7 vmtools 的安裝和使用
3.7.1安裝 vmtools 的步驟說明
1.進(jìn)入 centos
2.點(diǎn)擊 vm 菜單的->install vmware tools
3.centos 會出現(xiàn)一個(gè) vm 的安裝包
4.點(diǎn)擊右鍵解壓, 得到一個(gè)安裝文件
5.進(jìn)入該 vm 解壓的目錄 ,該文件在 /root/桌面/vmware-tools-distrib/下
6.安裝 ./vmware-install.pl
7.全部使用默認(rèn)設(shè)置即可
8.需要 reboot 重新啟動即可生效
3.7.2使用 vmtools 來設(shè)置 windows 和 linux 的共享文件夾
菜單->vm->setting, 如圖設(shè)置即可
注意:設(shè)置選項(xiàng)為 always enable ,
這樣可以讀寫了
windows 和 centos 可共享 d:/share 目錄
可以讀寫文件了
在 centos 的 /mnt/hgfs/ 下
3.7.3安裝 vmtools 的課堂練習(xí)
3.7.4 安裝vmtools遇到的問題
- Mounting HGFS shares: 失敗
- 一直無法在/mnt/hgfs/看到共享文件夾
解決:
-
先是重新安裝了幾次vmtools,還是一直顯示Mounting HGFS shares: 失敗
-
然后看到有個(gè)帖子說要在:在Linux 系統(tǒng)關(guān)閉的情況下,將虛擬機(jī)的共享文件夾開啟,然后再重新安裝就能成功了。
-
我想著那就徹底一點(diǎn),于是直接重啟電腦,然后打開VMware 后首先將共享文件夾設(shè)置打開。
-
然后登陸進(jìn)系統(tǒng)后,就能夠看到共享的文件夾了!!! 我還沒重新安裝vmtools呢!
-
驗(yàn)證一下,再找問題的過程中看到一個(gè)命令: vmware-hgfsclient ,嘗試使用一下,發(fā)現(xiàn)也能夠正常,于是決定不重新安裝vmtools了,感覺已經(jīng)完全正常了。
第 4 章 基礎(chǔ)篇 Linux 的目錄結(jié)構(gòu)
4.1 基本介紹
linux 的文件系統(tǒng)是采用級層式的樹狀目錄結(jié)構(gòu),在此結(jié)構(gòu)中的最上層是根目錄“/”,然后在此目錄下再創(chuàng)建其他的目錄。
深刻理解 linux 樹狀文件目錄是非常重要的,這里我給大家說明一下。
記住一句經(jīng)典的話:在 Linux 世界里,一切皆文件。
4.2 目錄結(jié)構(gòu)的具體介紹
具體的目錄結(jié)構(gòu)
- /bin [重點(diǎn)] (/usr/bin、/usr/local/bin)
- 是Binary的縮寫, 這個(gè)目錄存放著最經(jīng)常使用的命令。
- /sbin (/usr/sbin、/usr/local/sbin)
- s就是Super User的意思, 這里存放的是系統(tǒng)管理員使用的系統(tǒng)管理程序。
- /home [重點(diǎn)]
- 存放普通用戶的主目錄,在Linux中每隔用戶都有一個(gè)自己的目錄,一般該目錄名是以用戶的賬號命名的。
- /root [重點(diǎn)]
- 該目錄為系統(tǒng)管理員,也稱為超級權(quán)限者的用戶主目錄。
- /lib
- 系統(tǒng)開機(jī)所需最基本的動態(tài)連接共享庫,其作用類似于Windows里的DLL文件。幾乎所有的應(yīng)用程序都需要用到這些共享庫。
- /lost+found
- 這個(gè)目錄一般情況下是空的,當(dāng)系統(tǒng)非法關(guān)機(jī)后,這里存放了一些文件。
- /etc [重點(diǎn)]
- 所有的系統(tǒng)管理所需的配置文件和子目錄 my.conf
- etc : abbr. 等等,及其他 (et cetera) 等同于 and so on
- /usr [重點(diǎn)]
- 這是一個(gè)非常重要的目錄,用戶的很多應(yīng)用程序和文件都放在這個(gè)目錄下,類似于windows下的program files 目錄。
- /boot [重點(diǎn)]
- 存放的是啟動Linux時(shí)使用的一些核心文件,包括連接文件以及鏡像文件
- /proc
- 這個(gè)目錄是一個(gè)虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,訪問這個(gè)目錄來獲取系統(tǒng)信息。
- /srv
- service縮寫, 該目錄存放一些服務(wù)啟動之后需要提取的數(shù)據(jù)。
- /sys
- 這是Linux2.6內(nèi)核的一個(gè)很大的變化。該目錄下安裝了2.6內(nèi)核中新出現(xiàn)的一個(gè)文件系統(tǒng)
- /tmp
- 這個(gè)目錄是用來存放一些臨時(shí)文件的。
- /dev
- 類似于 windows的設(shè)備管理器,把所有的硬件用文件的形式 存儲。
- /media [重點(diǎn)]
- Linux系統(tǒng)會自動識別一些設(shè)備,例如U盤。光驅(qū)等等,當(dāng)識別后,Linux會把識別的設(shè)備掛載到這個(gè)目錄下。
- /mnt [重點(diǎn)]
- mount : 安裝,掛載的意思
- 系統(tǒng)提供該目錄是為了讓用戶臨時(shí)掛載別的文件系統(tǒng)的,我們可以將外部的存儲掛載在/mnt/上,然后進(jìn)入該目錄就可以查看里面的內(nèi)存了。
- /opt
- 這是給主機(jī)額外安裝軟件(安裝包?)所擺放的目錄。如安裝Oracle數(shù)據(jù)庫就可放到該目錄下。默認(rèn)為空。
- /usr/local [重點(diǎn)]
- 這是另一個(gè)給主機(jī)額外安裝軟件所安裝的目錄,一般是通過編譯源碼方式安裝的程序。
- /var [重點(diǎn)]
- 這個(gè)目錄中存放著不斷擴(kuò)充著的東西,習(xí)慣將經(jīng)常被修改的目錄放在這個(gè)目錄下。包括各種日志文件。
- /selinux
- security-enhanced linux 類似于360
- SELinux是一種安全子系統(tǒng),它能控制程序只能訪問特定文件。
4.3 一些理解參考
- /proc /srv /sys : 這三個(gè)和Linux 內(nèi)核相關(guān),非高手莫動
- Linux_/bin,/sbin,/usr/sbin,/usr/bin 目錄之簡單區(qū)別
4.4 Linux 目錄總結(jié)一下
第 5 章 實(shí)操篇 遠(yuǎn)程登錄 Linux 系統(tǒng)
5.1 為什么需要遠(yuǎn)程登錄 Linux
5.1.1示意圖
5.1.2說明
說明: 公司開發(fā)時(shí)候, 具體的情況是這樣的
5.2 遠(yuǎn)程登錄 Linux-Xshell5
說明: Xshell 是目前最好的遠(yuǎn)程登錄到 Linux 操作的軟件,流暢的速度并且完美解決了中文亂碼的問題, 是目前程序員首選的軟件。
Xshell [1] 是一個(gè)強(qiáng)大的安全終端模擬軟件,它支持 SSH1, SSH2, 以及 Microsoft Windows 平臺的 TELNET 協(xié)議。
Xshell 可以在 Windows 界面下用來訪問遠(yuǎn)端不同系統(tǒng)下的服務(wù)器,從而比較好的達(dá)到遠(yuǎn)程控制終端的目的。
特別說明:如果希望安裝好 XShell 5 就可以遠(yuǎn)程訪問 Linux 系統(tǒng)的話,需要有一個(gè)前提,就是Linux 啟用了 SSHD 服務(wù),該服務(wù)會監(jiān)聽 22 號端口。
一般安裝好的Linux就會啟動該服務(wù):SSHD 。
查看方式如下:使用setup命令 --> 系統(tǒng)服務(wù) (該界面退出方式,按tab鍵移動光標(biāo),按回車確認(rèn) )
5.3 安裝 XShell5 并使用
5.3.1安裝過程
看老師的視頻演示即可。基本是下一步即可
5.3.2XShell5 的關(guān)鍵配置
5.3.3 XShel5 操作 Linux 系統(tǒng)
XShel5 遠(yuǎn)程登錄到 Linux 后,就可以使用指令來操作 Linux 系統(tǒng)
5.4 遠(yuǎn)程上傳下載文件 Xftp5
5.4.1XFtp5 軟件介紹
是一個(gè)基于 windows 平臺的功能強(qiáng)大的 SFTP、FTP 文件傳輸軟件。使用了 Xftp 以后,windows用戶能安全地在 UNIX/Linux 和 Windows PC 之間傳輸文件。(示意圖)。
5.4.2XFtp5 軟件的安裝
這個(gè)看老師的演示即可.
5.4.3Xftp5 的配置和使用
連接到 Linux 的界面如下,就說明已經(jīng)成功的遠(yuǎn)程連接到 Linux
5.4.4如何解決 XFTP5 中文亂碼的問題
說明:如上圖配置后,還需要刷新一下,就可以解決中文亂碼
5.5 Xftp5 和 XShell5 的使用
第 6 章 實(shí)操篇 vi 和 vim 編輯器
參考:vim常用快捷鍵及其功能
6.1 vi 和 vim 的基本介紹
所有的 Linux 系統(tǒng)都會內(nèi)建 vi 文本編輯器。
Vim 具有程序編輯的能力,可以看做是 Vi 的增強(qiáng)版本, 可以主動的以字體顏色辨別語法的正確性,方便程序設(shè)計(jì)。代碼補(bǔ)完、編譯及錯(cuò)誤跳轉(zhuǎn)等方便編程的功能特別豐富,在程序員中被廣泛使用。
6.2 vi 和 vim 的三種常見模式
6.2.1正常模式
在正常模式下,我們可以使用快捷鍵。
以 vim 打開一個(gè)檔案就直接進(jìn)入一般模式了(這是默認(rèn)的模式)。在這個(gè)模式中,你可以使用『上下左右』按鍵來移動光標(biāo),你可以使用『刪除字符』或『刪除整行』來處理檔案內(nèi)容, 也可以使用『復(fù)制、貼上』來處理你的文件數(shù)據(jù)。
6.2.2插入模式/編輯模式
在模式下,程序員可以輸入內(nèi)容。
按下 i, I, o, O, a, A, r, R 等任何一個(gè)字母之后才會進(jìn)入編輯模式, 一般來說按 i 即可
6.2.3命令行模式
在這個(gè)模式當(dāng)中, 可以提供你相關(guān)指令,完成讀取、存盤、替換、離開 vim 、顯示行號等的動
作則是在此模式中達(dá)成的!
6.3 快速入門案例
使用 vim 開發(fā)一個(gè) Hello.java 程序, 保存.步驟說明和演示
6.4 vi 和 vim 三種模式的相互轉(zhuǎn)化圖
- w : 寫
- q : 退出
- ! : 強(qiáng)制
- ESC : 退回到 一般模式
注意:在其他資料中將模式分為:命令模式 、編輯模式、 底行模式
分別對應(yīng)此處的: 一般模式、編輯模式、命令(行)模式
6.5 快捷鍵的使用案例
第一步:顯示行號 :set nu
第二步:輸入 20 這個(gè)數(shù)
第三步: 輸入 shift+g
6.6 vim 和 vi 的快捷鍵鍵盤一覽圖
6.7 vi 和 vim 課堂練習(xí)
第 7 章 實(shí)操篇 開機(jī)、重啟和用戶登錄注銷
7.1 關(guān)機(jī)&重啟命令
7.1.1基本介紹
shutdown
shutdown -h now : 表示立即關(guān)機(jī)
shutdown -h 1 : 表示 1 分鐘后關(guān)機(jī)
shutdown -r now: 立即重啟
halt
就是直接使用,效果等價(jià)于關(guān)機(jī)
reboot
就是重啟系統(tǒng)。
syn :
把內(nèi)存的數(shù)據(jù)同步到磁盤
7.1.2注意細(xì)節(jié)
當(dāng)我們關(guān)機(jī)或者重啟時(shí),都應(yīng)該先執(zhí)行以下 sync 指令,把內(nèi)存的數(shù)據(jù)寫入磁盤,防止數(shù)據(jù)丟失。
7.2 用戶登錄和注銷
7.2.1基本介紹
7.2.2使用細(xì)節(jié)
第 8 章 實(shí)操篇 用戶管理
8.1 基本介紹
給大家畫一個(gè)示意圖,幫助大家理解用戶管理的規(guī)則。
說明
8.2 添加用戶
8.2.1基本語法
useradd [選項(xiàng)] 用戶名
8.2.2實(shí)際案例
添加一個(gè)用戶 xm.
特別說明:
cd 表示 change directory, 切換目錄.
8.2.3細(xì)節(jié)說明
8.3 給用戶指定或者修改密碼
基本語法
passwd 用戶名
應(yīng)用案例
8.4 刪除用戶
8.4.1基本語法
userdel 用戶名
8.4.2應(yīng)用案例
刪除用戶 xm,但是要保留家目錄
刪除用戶 xh 以及用戶主目錄
8.4.3思考題
在刪除用戶時(shí),我們一般不會將家目錄刪除。
8.5 查詢用戶信息
8.5.1基本語法
id 用戶名
8.5.2應(yīng)用實(shí)例
案例 1:請查詢 root 信息
8.5.3細(xì)節(jié)說明
8.6 切換用戶
8.6.1介紹
在操作 Linux 中,如果當(dāng)前用戶的權(quán)限不夠,可以通過 su - 指令,切換到高權(quán)限用戶,比如 root
8.6.2基本語法
su – 切換用戶名
8.6.3應(yīng)用實(shí)例
8.6.4細(xì)節(jié)說明
1)從權(quán)限高的用戶切換到權(quán)限低的用戶,不需要輸入密碼,反之需要。
2)當(dāng)需要返回到原來用戶時(shí),使用 exit 指令
8.6-2 查看當(dāng)前用戶/登錄用戶
whoami/ who am I
8.7 用戶組
8.7.1介紹
類似于角色,系統(tǒng)可以對有共性的多個(gè)用戶進(jìn)行統(tǒng)一的管理。
8.7.2增加組
groupadd 組名
8.7.3案例演示
8.7.4刪除組
指令(基本語法)
groupdel 組名
8.7.5案例演示
8.8 增加用戶時(shí)直接加上組
8.8.1指令(基本語法)
useradd -g 用戶組 用戶名
8.8.2案例演示
增加一個(gè)用戶 zwj, 直接將他指定到 wudang
步驟看演示:
8.9 修改用戶的組
8.9.1指令(基本語法)
usermod -g 用戶組 用戶名
8.9.2案例演示
創(chuàng)建一個(gè) shaolin 組,讓將 zwj 用戶修改到 shaolin
8.10 /etc/passwd 文件
用戶(user)的配置文件,記錄用戶的各種信息
每行的含義:用戶名:口令:用戶標(biāo)識號:組標(biāo)識號:注釋性描述:主目錄:登錄 Shell
8.11 /etc/shadow 文件
口令的配置文件
每行的含義:登錄名:加密口令:最后一次修改時(shí)間:最小時(shí)間間隔:最大時(shí)間間隔:警告時(shí)間:不活動
時(shí)間:失效時(shí)間:標(biāo)志
8.12 /etc/group 文件
組(group)的配置文件,記錄 Linux 包含的組的信息
每行含義:組名:口令:組標(biāo)識號:組內(nèi)用戶列表
第 9 章 實(shí)操篇 實(shí)用指令
9.1 指定運(yùn)行級別
運(yùn)行級別說明:
0 :關(guān)機(jī)
1 :單用戶【找回丟失密碼】
2:多用戶狀態(tài)沒有網(wǎng)絡(luò)服務(wù)
3:多用戶狀態(tài)有網(wǎng)絡(luò)服務(wù)
4:系統(tǒng)未使用保留給用戶
5:圖形界面
6:系統(tǒng)重啟
常用運(yùn)行級別是 3 和 5 ,要修改默認(rèn)的運(yùn)行級別可改文件
/etc/inittab 的 id:5:initdefault:這一行中的數(shù)字
9.2 切換到指定運(yùn)行級別的指令
9.2.1基本語法
init [012356]
9.2.2應(yīng)用實(shí)例
案例 1: 通過 init 來切換不同的運(yùn)行級別,比如動 5->3 , 然后關(guān)機(jī)
init 3
init 5
init 0
9.2.3面試題
如何找回 root 密碼,如果我們不小心,忘記 root 密碼,怎么找回。
思路: 進(jìn)入到 單用戶模式,然后修改 root 密碼。因?yàn)檫M(jìn)入單用戶模式,root 不需要密碼就可以登錄。
演示一把(注意觀察):
總結(jié)
開機(jī)->在引導(dǎo)時(shí)輸入 回車鍵-> 看到一個(gè)界面輸入 e -> 看到一個(gè)新的界面,選中第二行(編輯內(nèi)核)在輸入 e-> 在這行最后輸入 1 ,再輸入 回車鍵->再次輸入 b ,這時(shí)就會進(jìn)入到單用戶模式。
這時(shí),我們就進(jìn)入到單用戶模式,使用 passwd 指令來修改 root 密碼。
-
開機(jī),在引導(dǎo)時(shí)輸入 回車鍵
-
看到一個(gè)界面輸入 e
-
看到一個(gè)新的界面,選中第二行(編輯內(nèi)核)在輸入 e
-
在這行最后輸入 1 ,再輸入 回車鍵
-
再次輸入 b ,這時(shí)就會進(jìn)入到單用戶模式
-
使用 passwd 指令來修改 root 密碼,重啟后就可以使用新的密碼來登錄了。
9.2.4課堂練習(xí):
vim /etc/inittab
將 id:5:initdefault:這一行中的數(shù)字, 5 這個(gè)數(shù)字改成對應(yīng)的運(yùn)行級別即可。
9.3 幫助指令
9.3.1介紹
當(dāng)我們對某個(gè)指令不熟悉時(shí),我們可以使用 Linux 提供的幫助指令來了解這個(gè)指令的使用方法。
9.3.2man 獲得幫助信息
基本語法
man [命令或配置文件](功能描述:獲得幫助信息)
應(yīng)用實(shí)例
案例:查看 ls 命令的幫助信息
9.3.3 help 指令
基本語法
help 命令 (功能描述:獲得 shell 內(nèi)置命令的幫助信息)
應(yīng)用實(shí)例
案例:查看 cd 命令的幫助信息
9.3.4當(dāng)一個(gè)指令不熟悉如何學(xué)習(xí)的建議
百度幫助更直接
雖然上面兩個(gè)都可以來獲取指令幫助,但是需要英語功底,如果英語不太好的,我還是推薦大家直接百度靠譜。 ifconfig
9.4 文件目錄類
9.4.1pwd 指令
基本語法
pwd (功能描述:顯示當(dāng)前工作目錄的絕對路徑)
應(yīng)用實(shí)例
案例:顯示當(dāng)前工作目錄的絕對路徑
9.4.2 ls 指令
基本語法
ls [選項(xiàng)] [目錄或是文件]
常用選項(xiàng)
-a :顯示當(dāng)前目錄所有的文件和目錄,包括隱藏的。
-l :以列表的方式顯示信息
應(yīng)用實(shí)例
案例:查看當(dāng)前目錄的所有內(nèi)容信息
9.4.3cd 指令
基本語法
cd [參數(shù)] (功能描述:切換到指定目錄)
常用參數(shù)
絕對路徑和相對路徑
如何理解絕對路徑和相對路徑:
cd ~ 或者 cd :回到自己的家目錄
cd … 回到當(dāng)前目錄的上一級目錄
應(yīng)用實(shí)例
案例 1:使用絕對路徑切換到 root 目錄
cd /root
案例 2: 使用相對路徑到/root 目錄
這里我們需要知道該用戶目錄在哪個(gè)目錄下,才能寫出這個(gè)指令,假設(shè)在/usr/lib
cd …/…/root
案例 3:表示回到當(dāng)前目錄的上一級目錄
cd …
案例 4:回到家目錄
cd
cd ~
9.4.4mkdir 指令
mkdir 指令用于創(chuàng)建目錄(make directory)
基本語法
mkdir [選項(xiàng)] 要創(chuàng)建的目錄
常用選項(xiàng)
-p :創(chuàng)建多級目錄
應(yīng)用實(shí)例
案例 1:創(chuàng)建一個(gè)目錄 /home/dog
案例 2:創(chuàng)建多級目錄 /home/animal/tiger
9.4.5rmdir 指令
介紹
rmdir 指令刪除空目錄
基本語法
rmdir [選項(xiàng)] 要刪除的空目錄
應(yīng)用實(shí)例
案例 1:刪除一個(gè)目錄 /home/dog
使用細(xì)節(jié)
rmdir 刪除的是空目錄,如果目錄下有內(nèi)容時(shí)無法刪除的。
提示:如果需要刪除非空目錄,需要使用 rm -rf 要刪除的目錄
9.4.6touch 指令
touch 指令創(chuàng)建空文件
基本語法
touch 文件名稱
應(yīng)用實(shí)例
案例 1: 創(chuàng)建一個(gè)空文件 hello.txt(可以使用命令同時(shí)創(chuàng)建多個(gè)文件)
9.4.7cp 指令[重要]
cp 指令拷貝文件到指定目錄
基本語法
cp [選項(xiàng)] source dest
常用選項(xiàng)
-r :遞歸復(fù)制整個(gè)文件夾
應(yīng)用實(shí)例
案例 1: 將 /home/aaa.txt 拷貝到 /home/bbb 目錄下[拷貝單個(gè)文件]
案例 2: 遞歸復(fù)制整個(gè)文件夾,舉例
將/home/test 整個(gè)目錄拷貝到 /home/zwj 目錄
使用細(xì)節(jié)
強(qiáng)制覆蓋不提示的方法:\cp
技術(shù)小技巧:
可以通過 上下箭頭的鍵,調(diào)出原來使用過的指令。
9.4.8 rm 指令
rm 指令移除【刪除】文件或目錄
基本語法
rm [選項(xiàng)] 要刪除的文件或目錄
常用選項(xiàng)
-r :遞歸刪除整個(gè)文件夾
-f : 強(qiáng)制刪除不提示
應(yīng)用實(shí)例
案例 1: 將 /home/aaa.txt 刪除
案例 2: 遞歸刪除整個(gè)文件夾 /home/bbb
使用細(xì)節(jié)
強(qiáng)制刪除不提示的方法:帶上 -f 參數(shù)即可
9.4.9 mv 指令
mv 移動文件與目錄或重命名
基本語法
mv oldNameFile newNameFile (功能描述:重命名)
mv /temp/movefile /targetFolder (功能描述:移動文件)
應(yīng)用實(shí)例
案例 1: 將 /home/aaa.txt 文件 重新命名為 pig.txt
案例 2:將 /home/pig.txt 文件 移動到 /root 目錄下
9.4.10 cat 指令
cat 查看文件內(nèi)容,是以只讀的方式打開。
基本語法
cat [選項(xiàng)] 要查看的文件
常用選項(xiàng)
-n :顯示行號
應(yīng)用實(shí)例
案例 1: /etc/profile 文件內(nèi)容,并顯示行號
使用細(xì)節(jié)
cat 只能瀏覽文件,而不能修改文件,為了瀏覽方便,一般會帶上 管道命令 | more
cat 文件名 | more [分頁瀏覽]
9.4.11 more 指令
more 指令是一個(gè)基于 VI 編輯器的文本過濾器,它以全屏的方式按頁顯示文本文件的內(nèi)容 。more
指令中內(nèi)置了若干快捷鍵,詳見操作說明
基本語法
more 要查看的文件
應(yīng)用實(shí)例
案例: 采用 more 查看文件
/etc/profile
快捷鍵一覽
9.4.12 less 指令
less 指令用來分屏查看文件內(nèi)容,它的功能與 more 指令類似,但是比 more 指令更加強(qiáng)大,支持各種顯示終端。less 指令在顯示文件內(nèi)容時(shí),并不是一次將整個(gè)文件加載之后才顯示,而是根據(jù)顯示需要加載內(nèi)容,對顯示大型文件具有較高的效率 。
基本語法
less 要查看的文件
應(yīng)用實(shí)例
案例: 采用 less 查看一個(gè)大文件文件 /opt/金庸-射雕英雄傳 txt 精校版.txt
快捷鍵
9.4.13 > 指令 和 >> 指令
> 指令 和 >> 指令
> 輸出重定向 : 會將原來的文件的內(nèi)容覆蓋
>> 追加: 不會覆蓋原來文件的內(nèi)容,而是追加到文件的尾部。
基本語法
說明:ls -l > a.txt , 將 ls -l 的顯示的內(nèi)容覆蓋寫入到 a.txt 文件,如果該文件不存在,就創(chuàng)建該文件。
ls -al >>文件 (功能描述:列表的內(nèi)容追加到文件 aa.txt 的末尾)
cat 文件 1 > 文件 2 (功能描述:將文件 1 的內(nèi)容覆蓋到文件 2)
echo “內(nèi)容” >> 文件
應(yīng)用實(shí)例
案例 1: 將 /home 目錄下的文件列表 寫入到 /home/info.txt 中
案例 2: 將當(dāng)前日歷信息 追加到 /home/mycal 文件中 [提示 cal ]
9.4.14 echo 指令
echo 輸出內(nèi)容到控制臺。
基本語法
echo [選項(xiàng)] [輸出內(nèi)容]
應(yīng)用實(shí)例
案例: 使用 echo 指令輸出環(huán)境變量,輸出當(dāng)前的環(huán)境路徑。
案例: 使用 echo 指令輸出 hello,world!
9.4.15 head 指令
head 用于顯示文件的開頭部分內(nèi)容,默認(rèn)情況下 head 指令顯示文件的前 10 行內(nèi)容
基本語法
head 文件 (功能描述:查看文件頭 10 行內(nèi)容)
head -n 5 文件 (功能描述:查看文件頭 5 行內(nèi)容,5 可以是任意行數(shù))
應(yīng)用實(shí)例
案例: 查看/etc/profile 的前面 5 行代碼
9.4.16 tail 指令
tail 用于輸出文件中尾部的內(nèi)容,默認(rèn)情況下 tail 指令顯示文件的后 10 行內(nèi)容。
基本語法
應(yīng)用實(shí)例
案例 1: 查看/etc/profile 最后 5 行的代碼
案例 2: 實(shí)時(shí)監(jiān)控 mydate.txt , 看看到文件有變化時(shí),是否看到, 實(shí)時(shí)的追加日期
9.4.17 ln 指令
軟鏈接也叫符號鏈接,類似于 windows 里的快捷方式,主要存放了鏈接其他文件的路徑
基本語法
ln -s [原文件或目錄] [軟鏈接名] (功能描述:給原文件創(chuàng)建一個(gè)軟鏈接)
應(yīng)用實(shí)例
案例 1: 在/home 目錄下創(chuàng)建一個(gè)軟連接 linkToRoot,連接到 /root 目錄
案例 2: 刪除軟連接 linkToRoot
細(xì)節(jié)說明
當(dāng)我們使用 pwd 指令查看目錄時(shí),仍然看到的是軟鏈接所在目錄。
9.4.18 history 指令
查看已經(jīng)執(zhí)行過歷史命令,也可以執(zhí)行歷史指令
基本語法
history (功能描述:查看已經(jīng)執(zhí)行過歷史命令)
應(yīng)用實(shí)例
案例 1: 顯示所有的歷史命令
案例 2: 顯示最近使用過的 10 個(gè)指令
案例 3:執(zhí)行歷史編號為 5 的指令
9.5時(shí)間日期類
9.5.1 date 指令-顯示當(dāng)前日期
基本語法
應(yīng)用實(shí)例
案例 1: 顯示當(dāng)前時(shí)間信息
案例 2: 顯示當(dāng)前時(shí)間年月日
案例 3: 顯示當(dāng)前時(shí)間年月日時(shí)分秒
9.5.2date 指令-設(shè)置日期
基本語法
date -s 字符串時(shí)間
應(yīng)用實(shí)例
案例 1: 設(shè)置系統(tǒng)當(dāng)前時(shí)間 , 比如設(shè)置成 2018-10-10 11:22:22
9.5.3cal 指令
查看日歷指令
基本語法
cal [選項(xiàng)] (功能描述:不加選項(xiàng),顯示本月日歷)
應(yīng)用實(shí)例
案例 1: 顯示當(dāng)前日歷
案例 2: 顯示 2020 年日歷
9.6搜索查找類
9.6.1find 指令
find 指令將從指定目錄向下遞歸地遍歷其各個(gè)子目錄,將滿足條件的文件或者目錄顯示在終端。
基本語法
find [搜索范圍] [選項(xiàng)]
選項(xiàng)說明
應(yīng)用實(shí)例
案例 1: 按文件名:根據(jù)名稱查找/home 目錄下的 hello.txt 文件
案例 2:按擁有者:查找/opt 目錄下,用戶名稱為 nobody 的文件
案例 3:查找整個(gè) linux 系統(tǒng)下大于 20m 的文件(+n 大于 -n 小于 n 等于)
1m = 1024k
查詢 / 目錄下,所有 .txt 的文件(通配符)
9.6.2 locate 指令
locaate 指令可以快速定位文件路徑。locate 指令利用事先建立的系統(tǒng)中所有文件名稱及路徑的locate 數(shù)據(jù)庫實(shí)現(xiàn)快速定位給定的文件。Locate 指令無需遍歷整個(gè)文件系統(tǒng),查詢速度較快。為了保證查詢結(jié)果的準(zhǔn)確度,管理員必須定期更新 locate 時(shí)刻。
基本語法
locate 搜索文件
特別說明
由于 locate 指令基于數(shù)據(jù)庫進(jìn)行查詢,所以第一次運(yùn)行前,必須使用 updatedb 指令創(chuàng)建 locate 數(shù)據(jù)庫。
應(yīng)用實(shí)例
案例 1: 請使用 locate 指令快速定位 hello.txt 文件所在目錄
9.6.3 grep 指令和 管道符號 |
- grep 過濾查找
- 管道符,“|”,表示將前一個(gè)命令的處理結(jié)果輸出傳遞給后面的命令處理。
基本語法
grep [選項(xiàng)] 查找內(nèi)容 源文件
常用選項(xiàng)
應(yīng)用實(shí)例
案例 1: 請?jiān)?hello.txt 文件中,查找 “yes” 所在行,并且顯示行號
9.7壓縮和解壓類
9.7.1gzip/gunzip 指令
gzip 用于壓縮文件, gunzip 用于解壓的
基本語法
gzip 文件 (功能描述:壓縮文件,只能將文件壓縮為*.gz 文件)
gunzip 文件.gz (功能描述:解壓縮文件命令)
應(yīng)用實(shí)例
案例 1: gzip 壓縮, 將 /home 下的 hello.txt 文件進(jìn)行壓縮
案例 2: gunzip 壓縮, 將 /home 下的 hello.txt.gz 文件進(jìn)行解壓縮
細(xì)節(jié)說明
當(dāng)我們使用 gzip 對文件進(jìn)行壓縮后,不會保留原來的文件.
9.7.2 zip/unzip 指令
zip 用于壓縮文件, unzip 用于解壓的,這個(gè)在項(xiàng)目打包發(fā)布中很有用的
基本語法
zip [選項(xiàng)] XXX.zip 將要壓縮的內(nèi)容(功能描述:壓縮文件和目錄的命令)
unzip [選項(xiàng)] XXX.zip (功能描述:解壓縮文件)
zip 常用選項(xiàng)
-r:遞歸壓縮,即壓縮目錄
unzip 的常用選項(xiàng)
-d<目錄> :指定解壓后文件的存放目錄
應(yīng)用實(shí)例
案例 1: 將 /home 下的 所有文件進(jìn)行壓縮成 mypackage.zip
案例 2: 將 mypackge.zip 解壓到 /opt/tmp 目錄下
9.7.3 tar 指令
tar 指令 ,最后打包后的文件是 .tar.gz 的文件。
基本語法
tar [選項(xiàng)] XXX.tar.gz 打包的內(nèi)容 (功能描述:打包目錄,壓縮后的文件格式.tar.gz)
選項(xiàng)說明
應(yīng)用實(shí)例
案例 1: 壓縮多個(gè)文件,將 /home/a1.txt 和 /home/a2.txt 壓縮成 a.tar.gz
案例 2: 將/home 的文件夾 壓縮成 myhome.tar.gz
案例 3: 將 a.tar.gz 解壓到當(dāng)前目錄
案例 4: 將 myhome.tar.gz 解壓到 /opt/ 目錄下
指定解壓到的那個(gè)目錄,事先要存在才能成功,否則會報(bào)錯(cuò)。
第 10 章 實(shí)操篇 組管理和權(quán)限管理
10.1 Linux 組基本介紹
在 linux 中的每個(gè)用戶必須屬于一個(gè)組,不能獨(dú)立于組外。在 linux 中每個(gè)文件有所有者、所在組、其它組的概念。
10.2文件/目錄 所有者
一般為文件的創(chuàng)建者,誰創(chuàng)建了該文件,就自然的成為該文件的所有者。
10.2.1 查看文件的所有者
指令:ls -ahl
應(yīng)用實(shí)例:創(chuàng)建一個(gè)組 police,再創(chuàng)建一個(gè)用戶 tom,將 tom 放在 police 組 ,然后使用 tom 來創(chuàng)建一個(gè)文件 ok.txt,看看情況如何?
10.2.2 修改文件所有者
指令:chown 用戶名 文件名
應(yīng)用案例
要求:使用 root 創(chuàng)建一個(gè)文件 apple.txt ,然后將其所有者修改成 tom
10.3組的創(chuàng)建
10.3.1 基本指令
groupadd 組名
10.3.2 應(yīng)用實(shí)例:
創(chuàng)建一個(gè)組, ,monster
創(chuàng)建一個(gè)用戶 fox ,并放入到 monster 組中
10.4文件/目錄 所在組
當(dāng)某個(gè)用戶創(chuàng)建了一個(gè)文件后,默認(rèn)這個(gè)文件的所在組就是該用戶所在的組。
10.4.1 查看文件/目錄所在組
基本指令
ls –ahl
應(yīng)用實(shí)例
10.4.2 修改文件所在的組
基本指令
chgrp 組名 文件名
應(yīng)用實(shí)例
使用 root 用戶創(chuàng)建文件 orange.txt ,看看當(dāng)前這個(gè)文件屬于哪個(gè)組,然后將這個(gè)文件所在組,修改到 police 組。
10.5其它組
除文件的所有者和所在組的用戶外,系統(tǒng)的其它用戶都是文件的其它組.
10.6 改變用戶所在組
在添加用戶時(shí),可以指定將該用戶添加到哪個(gè)組中,同樣的用 root 的管理權(quán)限可以改變某個(gè)用戶所在的組。
10.6.1 改變用戶所在組
10.6.2 應(yīng)用實(shí)例
創(chuàng)建一個(gè)土匪組(bandit)將 tom 這個(gè)用戶從原來所在的 police 組,修改到 bandit(土匪) 組
10.7權(quán)限的基本介紹
ls -l 中顯示的內(nèi)容如下:
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
0-9 位說明
- - : 普通文件
- d: 目錄
- l : 軟連接
- c: 字符設(shè)備(鼠標(biāo)、鍵盤)
- b:塊文件,硬盤
10.8 rwx 權(quán)限詳解
10.8.1 rwx 作用到文件
10.8.2 rwx 作用到目錄
10.9文件及目錄權(quán)限實(shí)際案例
ls -l 中顯示的內(nèi)容如下:(記住)
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
10 個(gè)字符確定不同用戶能對文件干什么
第一個(gè)字符代表文件類型: 文件 (-),目錄(d),鏈接(l)
其余字符每 3 個(gè)一組(rwx) 讀? 寫(w) 執(zhí)行(x)
第一組 rwx : 文件擁有者的權(quán)限是讀、寫和執(zhí)行
第二組 rw- : 與文件擁有者同一組的用戶的權(quán)限是讀、寫但不能執(zhí)行
第三組 r-- : 不與文件擁有者同組的其他用戶的權(quán)限是讀不能寫和執(zhí)行
可用數(shù)字表示為: r=4,w=2,x=1 因此 rwx=4+2+1=7
后面幾塊內(nèi)容
1 【文件:硬連接數(shù)或 目錄:子目錄數(shù)】
root 【用戶】
root 【組】
1213 【文件大小(字節(jié)),如果是文件夾,顯示 4096 字節(jié)】
Feb 2 09:39 【最后修改日期】
abc 【文件名】
10.10 修改權(quán)限-chmod
10.10.1 基本說明:
通過 chmod 指令,可以修改文件或者目錄的權(quán)限
10.10.2 第一種方式:+ 、-、= 變更權(quán)限
u:所有者 g:所有組 o:其他人 a:所有人(u、g、o 的總和)
案例演示
給 abc 文件 的所有者讀寫執(zhí)行的權(quán)限,給所在組讀執(zhí)行權(quán)限,給其他組讀執(zhí)行權(quán)限 。
給 abc 文件的所有者除去執(zhí)行的權(quán)限,增加組寫的權(quán)限
給 abc 文件的所有用戶添加讀的權(quán)限
10.10.3 第二種方式:通過數(shù)字變更權(quán)限
規(guī)則:r=4 w=2 x=1 ,rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件目錄名
相當(dāng)于 chmod 751 文件目錄名
案例演示
要求:將 /home/abc.txt 文件的權(quán)限修改成 rwxr-xr-x, 使用給數(shù)字的方式實(shí)現(xiàn):
rwx = 4+2+1 = 7
r-x = 4+1=5
r-x = 4+1 =5
指令:chmod 755 /home/abc.txt
10.11 修改文件所有者-chown
10.11.1 基本介紹
chown newowner file 改變文件的所有者
chown newowner:newgroup file 改變用戶的所有者和所有組
-R 如果是目錄 則使其下所有子文件或目錄遞歸生效
10.11.2 案例演示:
首先我們應(yīng)該使用 root 操作。
10.12 修改文件所在組-chgrp
10.12.1 基本介紹
chgrp newgroup file 改變文件的所有組
10.12.2 案例演示:
請將 /home/abc .txt 文件的所在組修改成 bandit (土匪)
chgrp bandit /home/abc.txt
請將 /home/kkk 目錄下所有的文件和目錄的所在組都修改成 bandit(土匪)
chgrp -R bandit /home/kkk
10.13 最佳實(shí)踐-警察和土匪游戲
police , bandit
jack, jerry: 警察
xh, xq: 土匪
(1) 創(chuàng)建組
(2) 創(chuàng)建用戶
(3) jack 創(chuàng)建一個(gè)文件,自己可以讀寫,本組人可以讀,其它組沒人任何權(quán)限
(4) jack 修改該文件,讓其它組人可以讀, 本組人可以讀寫
(5) xh 投靠 警察,看看是否可以讀寫.
登錄root,修改用戶所在組
使用小紅登錄,發(fā)現(xiàn)進(jìn)不去目錄
修改jerry這個(gè)目錄的權(quán)限,讓同組的其他用戶可以進(jìn)入
10.14 課后練習(xí)
練習(xí)文件權(quán)限管理[課堂練習(xí)]
建立兩個(gè)組(神仙,妖怪)
建立四個(gè)用戶(唐僧,悟空,八戒,沙僧)
設(shè)置密碼
(這里有問題,使用usermode無法真正修改用戶的所屬組,我的理解錯(cuò)了,這里shaseng不是用戶,而是目錄,由于前面創(chuàng)建的時(shí)候沒有指定指定的用戶是shaseng,所以這個(gè)時(shí)候要修改也是按照修改文件或目錄所屬的組的方式去修改)
把悟空,八戒放入妖怪 唐僧 沙僧 在神仙
用悟空建立一個(gè)文件 (monkey.java 該文件要輸出 i am monkey)
給八戒一個(gè)可以 r w 的權(quán)限
八戒修改 monkey.java 加入一句話( i am pig)
唐僧 沙僧 對該文件沒有權(quán)限
把 沙僧 放入妖怪組
讓沙僧 修改 該文件 monkey, 加入一句話 (“我是沙僧,我是妖怪!”);
10.15 課后練習(xí)題 2
1 用 root 登錄,建立用戶 mycentos,自己設(shè)定密碼
2.用 mycentos 登錄,在主目錄下建立目錄 test/t11/t1
3.在 t1 中建立一個(gè)文本文件 aa,用 vi 編輯其內(nèi)容為 ls –al
4.改變 aa 的權(quán)限為可執(zhí)行文件[可以將當(dāng)前日期追加到一個(gè)文件],運(yùn)行該文件./aa
5.刪除新建立的目錄 test/t11/t1
6.刪除用戶 mycentos 及其主目錄中的內(nèi)容
7.將 linux 設(shè)置成進(jìn)入到圖形界面的
8. 重新啟動 linux 或關(guān)機(jī)
第 11 章 實(shí)操篇 crond 任務(wù)調(diào)度
11.1原理示意圖
crontab 進(jìn)行 定時(shí)任務(wù)的設(shè)置,。
11.2 概述
任務(wù)調(diào)度:是指系統(tǒng)在某個(gè)時(shí)間執(zhí)行的特定的命令或程序。
任務(wù)調(diào)度分類:
1.系統(tǒng)工作:有些重要的工作必須周而復(fù)始地執(zhí)行。如病毒掃描等
2.個(gè)別用戶工作:個(gè)別用戶可能希望執(zhí)行某些程序,比如對 mysql 數(shù)據(jù)庫的備份。
11.3 基本語法
crontab [選項(xiàng)]
11.3.1 常用選項(xiàng)
11.4快速入門
11.4.1 任務(wù)的要求
設(shè)置任務(wù)調(diào)度文件:/etc/crontab
設(shè)置個(gè)人任務(wù)調(diào)度。執(zhí)行 crontab –e 命令。
接著輸入任務(wù)到調(diào)度文件
如:*/1 * * * * ls –l /etc/ > /tmp/to.txt
意思說每小時(shí)的每分鐘執(zhí)行 ls –l /etc/ > /tmp/to.txt 命令
11.4.2 步驟如下
11.4.3 參數(shù)細(xì)節(jié)說明
11.5任務(wù)調(diào)度的幾個(gè)應(yīng)用實(shí)例
11.5.1 案例 1:每隔 1 分鐘,就將當(dāng)前的日期信息,追加到 /tmp/mydate 文件中
- 先編寫一個(gè)文件 /home/mytask1.sh
- date >> /tmp/mydate
- 給 mytask1.sh 一個(gè)可以執(zhí)行權(quán)限
- chmod 744 /home/mytask1.sh
- crontab -e
- */1 * * * * /home/mytask1.sh
- 成功
11.5.2 案例 2:每隔 1 分鐘, 將當(dāng)前日期和日歷都追加到 /home/mycal 文件中
1)先編寫一個(gè)文件 /home/mytask2.sh
date >> /tmp/mycal
cal >> /tmp/mycal
2) 給 mytask1.sh 一個(gè)可以執(zhí)行權(quán)限
chmod 744 /home/mytask2.sh
3) crontab -e
4) */1 * * * * /home/mytask2.sh
5) 成功
11.5.3 案例 3: 每天凌晨 2:00 將 mysql 數(shù)據(jù)庫 testdb ,備份到文件中
mydb.bak。
/usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/mydb.bak
chmod 744 /home/mytask3.sh
11.6 crond 相關(guān)指令:
第 12 章 實(shí)操篇 Linux 磁盤分區(qū)、掛載
12.1 分區(qū)基礎(chǔ)知識
12.1.1 分區(qū)的方式:
1.最多支持四個(gè)主分區(qū)
2.系統(tǒng)只能安裝在主分區(qū)
3.擴(kuò)展分區(qū)要占一個(gè)主分區(qū)
4.MBR 最大只支持 2TB,但擁有最好的兼容性
1.支持無限多個(gè)主分區(qū)(但操作系統(tǒng)可能限制,比如 windows 下最多 128 個(gè)分區(qū))
2.最大支持 18EB 的大容量(1EB=1024 PB,1PB=1024 TB )
3.windows7 64 位以后支持 gtp
12.1.2 windows 下的磁盤分區(qū)
12.2 Linux 分區(qū)
12.2.1 原理介紹
12.2.2 硬盤說明
12.2.3 使用 lsblk 指令查看當(dāng)前系統(tǒng)的分區(qū)情況
12.3 掛載的經(jīng)典案例
需求是給我們的 Linux 系統(tǒng)增加一個(gè)新的硬盤,并且掛載到/home/newdisk
12.3.1 如何增加一塊硬盤
vim /etc/fstab
/dev/sdb1 /home/newdisk ext4 defaults 0 0
12.4 具體的操作步驟整理
12.4.1 虛擬機(jī)增加硬盤步驟 1
在【虛擬機(jī)】菜單中,選擇【設(shè)置】,然后設(shè)備列表里添加硬盤,然后一路【下一步】,中間只有選擇磁盤大小的地方需要修改,至到完成。然后重啟系統(tǒng)(才能識別)!
12.4.2 虛擬機(jī)增加硬盤步驟 2
分區(qū)命令 fdisk /dev/sdb
開始對/sdb 分區(qū)
? m 顯示命令列表
? p 顯示磁盤分區(qū) 同 fdisk –l
? n 新增分區(qū)
? d 刪除分區(qū)
? w 寫入并退出
說明: 開始分區(qū)后輸入 n,新增分區(qū),然后選擇 p ,分區(qū)類型為主分區(qū)。兩次回車默認(rèn)剩余全部空間。最后輸入 w 寫入分區(qū)并退出,若不保存退出輸入 q。
12.4.3 虛擬機(jī)增加硬盤步驟 3
格式化磁盤
分區(qū)命令:mkfs -t ext4 /dev/sdb1
其中 ext4 是分區(qū)類型
12.4.4 虛擬機(jī)增加硬盤步驟 4
掛載: 將一個(gè)分區(qū)與一個(gè)目錄聯(lián)系起來,
?mount 設(shè)備名稱 掛載目錄
?例如: mount /dev/sdb1 /newdisk
?umount 設(shè)備名稱 或者 掛載目錄
?例如: umount /dev/sdb1 或者 umount /newdisk
12.4.5 虛擬機(jī)增加硬盤步驟 5
永久掛載: 通過修改/etc/fstab 實(shí)現(xiàn)掛載
添加完成后 執(zhí)行 mount –a 即刻生效
12.5 磁盤情況查詢
12.5.1 查詢系統(tǒng)整體磁盤使用情況
基本語法
df -h
應(yīng)用實(shí)例
查詢系統(tǒng)整體磁盤使用情況
12.5.2 查詢指定目錄的磁盤占用情況
? 基本語法
du -h /目錄
查詢指定目錄的磁盤占用情況,默認(rèn)為當(dāng)前目錄
-s 指定目錄占用大小匯總
-h 帶計(jì)量單位
-a 含文件
–max-depth=1 子目錄深度
-c 列出明細(xì)的同時(shí),增加匯總值
?應(yīng)用實(shí)例
查詢 /opt 目錄的磁盤占用情況,深度為 1
12.6 磁盤情況-工作實(shí)用指令
統(tǒng)計(jì)/home 文件夾下文件的個(gè)數(shù)
統(tǒng)計(jì)/home 文件夾下目錄的個(gè)數(shù)
統(tǒng)計(jì)/home 文件夾下文件的個(gè)數(shù),包括子文件夾里的
統(tǒng)計(jì)文件夾下目錄的個(gè)數(shù),包括子文件夾里的
以樹狀顯示目錄結(jié)構(gòu)
第 13 章 實(shí)操篇 網(wǎng)絡(luò)配置
13.1 Linux 網(wǎng)絡(luò)配置原理圖(含虛擬機(jī))
目前我們的網(wǎng)絡(luò)配置采用的是 NAT。
13.2 查看網(wǎng)絡(luò) IP 和網(wǎng)關(guān)
13.2.1 查看虛擬網(wǎng)絡(luò)編輯器
13.2.2 修改 ip 地址(修改虛擬網(wǎng)絡(luò)的 ip)
13.2.3 查看網(wǎng)關(guān)
13.2.4 查看 windows 環(huán)境的中 VMnet8 網(wǎng)絡(luò)配置 (ipconfig 指令)
13.3 ping 測試主機(jī)之間網(wǎng)絡(luò)連通
13.3.1 基本語法
ping 目的主機(jī) (功能描述:測試當(dāng)前服務(wù)器是否可以連接目的主機(jī))
13.3.2 應(yīng)用實(shí)例
測試當(dāng)前服務(wù)器是否可以連接百度
[root@hadoop100 桌面]# ping www.baidu.com
13.4 linux 網(wǎng)絡(luò)環(huán)境配置
13.4.1 第一種方法(自動獲取)
缺點(diǎn): linux 啟動后會自動獲取 IP,缺點(diǎn)是每次自動獲取的 ip 地址可能不一樣。這個(gè)不適用于做服務(wù)器,因?yàn)槲覀兊姆?wù)器的 ip 需要時(shí)固定的
13.4.2 第二種方法(指定固定的 ip)
說明
直 接 修 改 配 置 文 件 來 指 定 IP, 并 可 以 連 接 到 外 網(wǎng) ( 程 序 員 推 薦 ) ,編 輯
vi /etc/sysconfig/network-scripts/ifcfg-eth0
要求:將 ip 地址配置的靜態(tài)的,ip 地址為 192.168.1.130
修改后,一定要 重啟服務(wù)
第 14 章 實(shí)操篇 進(jìn)程管理
14.1 進(jìn)程的基本介紹
14.2 顯示系統(tǒng)執(zhí)行的進(jìn)程
14.2.1 說明
查看進(jìn)程使用的指令是 ps ,一般來說使用的參數(shù)是 ps -aux
14.2.2 ps 指令詳解
? System V 展示風(fēng)格
? USER:用戶名稱
? PID:進(jìn)程號
?%CPU:進(jìn)程占用 CPU 的百分比
?%MEM:進(jìn)程占用物理內(nèi)存的百分比
?VSZ:進(jìn)程占用的虛擬內(nèi)存大小(單位:KB)
?RSS:進(jìn)程占用的物理內(nèi)存大小(單位:KB)
?TT:終端名稱,縮寫 .
?STAT:進(jìn)程狀態(tài),其中 S-睡眠,s-表示該進(jìn)程是會話的先導(dǎo)進(jìn)程,N-表示進(jìn)程擁有比普通優(yōu)先級更低的優(yōu)先級,R-正在運(yùn)行,D-短期等待,Z-僵死進(jìn)程,T-被跟蹤或者被停止等等
?STARTED:進(jìn)程的啟動時(shí)間
?TIME:CPU 時(shí)間,即進(jìn)程使用 CPU 的總時(shí)間
?COMMAND:啟動進(jìn)程所用的命令和參數(shù),如果過長會被截?cái)囡@示
14.2.3 應(yīng)用實(shí)例
要求:以全格式顯示當(dāng)前所有的進(jìn)程,查看進(jìn)程的父進(jìn)程。
?ps -ef 是以全格式顯示當(dāng)前所有的進(jìn)程
?-e 顯示所有進(jìn)程。-f 全格式。
?ps -ef|grep xxx
?是 BSD 風(fēng)格
?UID:用戶 ID
?PID:進(jìn)程 ID
?PPID:父進(jìn)程 ID
?C:CPU 用于計(jì)算執(zhí)行優(yōu)先級的因子。數(shù)值越大,表明進(jìn)程是 CPU 密集型運(yùn)算,執(zhí)行優(yōu)先級會降低;數(shù)值越小,表明進(jìn)程是 I/O 密集型運(yùn)算,執(zhí)行優(yōu)先級會提高
?STIME:進(jìn)程啟動的時(shí)間
?TTY:完整的終端名稱
?TIME:CPU 時(shí)間
?CMD:啟動進(jìn)程所用的命令和參數(shù)
思考題,如果我們希望查看 sshd 進(jìn)程的父進(jìn)程號是多少,應(yīng)該怎樣查詢 ?
14.3 終止進(jìn)程 kill 和 killall
14.3.1 介紹:
若是某個(gè)進(jìn)程執(zhí)行一半需要停止時(shí),或是已消了很大的系統(tǒng)資源時(shí),此時(shí)可以考慮停止該進(jìn)程。使用 kill 命令來完成此項(xiàng)任務(wù)。
14.3.2 基本語法:
kill [選項(xiàng)] 進(jìn)程號(功能描述:通過進(jìn)程號殺死進(jìn)程)
killall 進(jìn)程名稱 (功能描述:通過進(jìn)程名稱殺死進(jìn)程,也支持通配符,這在系統(tǒng)因負(fù)載過大而變得很慢時(shí)很有用)
14.3.3 常用選項(xiàng):
-9 :表示強(qiáng)迫進(jìn)程立即停止
14.3.4 最佳實(shí)踐:
案例 1:踢掉某個(gè)非法登錄用戶
案例 2: 終止遠(yuǎn)程登錄服務(wù) sshd, 在適當(dāng)時(shí)候再次重啟 sshd 服務(wù)
案例 3: 終止多個(gè) gedit 編輯器 【killall , 通過進(jìn)程名稱來終止進(jìn)程】
案例 4:強(qiáng)制殺掉一個(gè)終端
14.4 查看進(jìn)程樹 pstree
14.4.1 基本語法:
pstree [選項(xiàng)] ,可以更加直觀的來看進(jìn)程信息
14.4.2 常用選項(xiàng):
-p :顯示進(jìn)程的 PID
-u :顯示進(jìn)程的所屬用戶
14.4.3 應(yīng)用實(shí)例:
案例 1:請你樹狀的形式顯示進(jìn)程的 pid
案例 2:請你樹狀的形式進(jìn)程的用戶 id
pstree -u 即可
14.5 服務(wù)(Service)管理
14.5.1 介紹:
服務(wù)(service) 本質(zhì)就是進(jìn)程,但是是運(yùn)行在后臺的,通常都會監(jiān)聽某個(gè)端口,等待其它程序的請求,比如(mysql , sshd 防火墻等),因此我們又稱為守護(hù)進(jìn)程,是 Linux 中非常重要的知識點(diǎn)。
【原理圖】
14.5.2 service 管理指令:
service 服務(wù)名 [start | stop | restart | reload | status]
在 CentOS7.0 后 不再使用 service ,而是 systemctl
14.5.3 使用案例:
14.5.4 細(xì)節(jié)討論:
如果希望設(shè)置某個(gè)服務(wù)自啟動或關(guān)閉永久生效,要使用 chkconfig 指令,馬上講
14.5.5 查看服務(wù)名:
方式 1:使用 setup -> 系統(tǒng)服務(wù) 就可以看到。
方式 2: /etc/init.d/服務(wù)名稱
14.5.6 服務(wù)的運(yùn)行級別(runlevel):
查看或者修改默認(rèn)級別: vi /etc/inittab
Linux 系統(tǒng)有 7 種運(yùn)行級別(runlevel):常用的是級別 3 和 5
?運(yùn)行級別 0:系統(tǒng)停機(jī)狀態(tài),系統(tǒng)默認(rèn)運(yùn)行級別不能設(shè)為 0,否則不能正常啟動
?運(yùn)行級別 1:單用戶工作狀態(tài),root 權(quán)限,用于系統(tǒng)維護(hù),禁止遠(yuǎn)程登陸
?運(yùn)行級別 2:多用戶狀態(tài)(沒有 NFS),不支持網(wǎng)絡(luò)
?運(yùn)行級別 3:完全的多用戶狀態(tài)(有 NFS),登陸后進(jìn)入控制臺命令行模式
?運(yùn)行級別 4:系統(tǒng)未使用,保留
?運(yùn)行級別 5:X11 控制臺,登陸后進(jìn)入圖形 GUI 模式
?運(yùn)行級別 6:系統(tǒng)正常關(guān)閉并重啟,默認(rèn)運(yùn)行級別不能設(shè)為 6,否則不能正常啟動
14.5.7 開機(jī)的流程說明
14.5.8 chkconfig 指令
介紹
通過 chkconfig 命令可以給每個(gè)服務(wù)的各個(gè)運(yùn)行級別設(shè)置自啟動/關(guān)閉
基本語法
查看服務(wù) chkconfig --list|grep xxx
chkconfig 服務(wù)名 --list
chkconfig --level 5 服務(wù)名 on/off
14.5.9 應(yīng)用實(shí)例:
bash> chkconfig --list
bash> service sshd status
bash> chkconfig --level 5 sshd off
bash> chkconfig --level 5 iptables off
bash> chkconfig iptables off
bash> chkconfig iptables on
14.5.10 ? 使用細(xì)節(jié)
14.6 動態(tài)監(jiān)控進(jìn)程
14.6.1 介紹:
top 與 ps 命令很相似。它們都用來顯示正在執(zhí)行的進(jìn)程。Top 與 ps 最大的不同之處,在于 top 在執(zhí)行一段時(shí)間可以更新正在運(yùn)行的的進(jìn)程。
14.6.2 基本語法:
top [選項(xiàng)]
14.6.3 選項(xiàng)說明:
14.6.4 應(yīng)用實(shí)例:
案例 1.監(jiān)視特定用戶
top:輸入此命令,按回車鍵,查看執(zhí)行的進(jìn)程。
u:然后輸入“u”回車,再輸入用戶名,即可
案例 2:終止指定的進(jìn)程。
top:輸入此命令,按回車鍵,查看執(zhí)行的進(jìn)程。
k:然后輸入“k”回車,再輸入要結(jié)束的進(jìn)程 ID 號
案例 3:指定系統(tǒng)狀態(tài)更新的時(shí)間(每隔 10 秒自動更新, 默認(rèn)是 3 秒)
bash> top -d 10
14.6.5 查看系統(tǒng)網(wǎng)絡(luò)情況 netstat(重要)
基本語法
netstat [選項(xiàng)]
netstat -anp
選項(xiàng)說明
-an 按一定順序排列輸出
-p 顯示哪個(gè)進(jìn)程在調(diào)用
應(yīng)用案例
查看系統(tǒng)所有的網(wǎng)絡(luò)服務(wù)
請查看服務(wù)名為 sshd 的服務(wù)的信息
第 15 章 實(shí)操篇 RPM 和 YUM
15.1 rpm 包的管理
15.1.1 介紹
一種用于互聯(lián)網(wǎng)下載包的打包及安裝工具,它包含在某些 Linux 分發(fā)版中。它生成具有.RPM擴(kuò)展名的文件。RPM 是 RedHat Package Manager(RedHat 軟件包管理工具)的縮寫,類似 windows的 setup.exe,這一文件格式名稱雖然打上了 RedHat 的標(biāo)志,但理念是通用的。Linux 的分發(fā)版本都有采用(suse,redhat, centos 等等),可以算是公認(rèn)的行業(yè)標(biāo)準(zhǔn)了。
15.1.2 rpm 包的簡單查詢指令:
查詢已安裝的 rpm 列表 rpm –qa|grep xx
請查詢看一下,當(dāng)前的 Linux 有沒有安裝 firefox .
15.1.3 rpm 包名基本格式:
一個(gè) rpm 包名:firefox-45.0.1-1.el6.centos.x86_64.rpm
名稱:firefox
版本號:45.0.1-1
適用操作系統(tǒng): el6.centos.x86_64
表示 centos6.x 的 64 位系統(tǒng)
如果是 i686、i386 表示 32 位系統(tǒng),noarch 表示通用。。
15.1.4 rpm 包的其它查詢指令:
rpm -qa :查詢所安裝的所有 rpm 軟件包
rpm -qa | more [分頁顯示]
rpm -qa | grep X [rpm -qa | grep firefox ]
rpm -q 軟件包名 :查詢軟件包是否安裝
rpm -q firefox
rpm -qi 軟件包名 :查詢軟件包信息
rpm -qi file
rpm -ql 軟件包名 :查詢軟件包中的文件
rpm -ql firefox
rpm -qf 文件全路徑名 查詢文件所屬的軟件包
- rpm -qf /etc/passwd
- rpm -qf /root/install.log
15.1.5 卸載 rpm 包
?基本語法
rpm -e RPM 包的名稱
?應(yīng)用案例
?細(xì)節(jié)問題
如: $ rpm -e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
如:$ rpm -e –nodeps foo
帶上 --nodeps 就是強(qiáng)制刪除。
15.1.6 安裝 rpm 包
基本語法
rpm -ivh RPM 包全路徑名稱
參數(shù)說明
i=install 安裝
v=verbose 提示
h=hash 進(jìn)度條
應(yīng)用實(shí)例
步驟先找到 firefox 的安裝 rpm 包,你需要掛載上我們安裝 centos 的 iso 文件,然后到/media/下去找 rpm 找。
cp firefox-45.0.1-1.el6.centos.x86_64.rpm /opt/
15.2 yum
15.2.1 介紹:
Yum 是一個(gè) Shell 前端軟件包管理器。基于 RPM 包管理,能夠從指定的服務(wù)器自動下載 RPM 包并且安裝,可以自動處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包。使用 yum 的前提是可以聯(lián)網(wǎng)。
15.2.2 yum 的基本指令
- 查詢 yum 服務(wù)器是否有需要安裝的軟件
yum list|grep xx 軟件列表 - 安裝指定的 yum 包
yum install xxx 下載安裝
15.2.3 yum 應(yīng)用實(shí)例:
案例:請使用 yum 的方式來安裝 firefox
會安裝最新版本的軟件。
成功!
第 16 章 JavaEE 定制篇 搭建 JavaEE 環(huán)境
16.1 概述
16.1.1 示意圖:
如果需要在 Linux 下進(jìn)行 JavaEE 的開發(fā),我們需要安裝如下軟件
16.2 安裝 JDK
16.2.1 看老師演示,一會整理筆記:
16.2.2 安裝步驟
先將軟件通過 xftp5 上傳到 /opt 下
解壓縮到 /opt
配置環(huán)境變量的配置文件 vim /etc/profile
JAVA_HOME=/opt/jdk1.7.0_79
PATH=/opt/jdk1.7.0_79/bin:$PATH
export JAVA_HOME PATH
需要注銷用戶,環(huán)境變量才能生效。
如果是在 3 運(yùn)行級別, logout
如果是在 5 運(yùn)行級別,右上角注銷
在任何目錄下就可以使用 java 和 javac
16.2.3 測試是否安裝成功
編寫一個(gè)簡單的 Hello.java 輸出"hello,world!"
16.3 安裝 tomcat
解壓縮到/opt
啟動 tomcat ./startup.sh
先進(jìn)入到 tomcat 的 bin 目錄
使用 Linux 本地的瀏覽是可以訪問到 tomcat
開放端口 8080 ,這樣外網(wǎng)才能訪問到 tomcat
vim /etc/sysconfig/iptables
重啟防火墻
16.3.2 測試是否安裝成功:
在 windows、Linux 下 訪問 http://linuxip:8080
16.4 Eclipse 的安裝
16.4.1 步驟 :
啟動方法 1: 創(chuàng)建一個(gè)快捷方式
啟動方式 2: 進(jìn)入到 eclipse 解壓后的文件夾,然后執(zhí)行 ./eclipse 即可
16.5 mysql 的安裝和配置
16.5.1 安裝的步驟和文檔
[說明: 因?yàn)?mysql 安裝時(shí)間很長,所以在授課時(shí),可以考慮最先安裝 mysql]
相關(guān)的安裝軟件在課件
注意: 先刪除一下 Mysql 相關(guān)的軟件…
16.5.2 說明
請同學(xué)們一定要按照老師的文檔一步一步的安裝成功。
CentOS 6.8下編譯安裝MySQL 5.6.14
概述:
通過源代碼安裝高版本的5.6.14。
正文:
一:卸載舊版本
使用下面的命令檢查是否安裝有MySQL Server
rpm -qa | grep mysql
有的話通過下面的命令來卸載掉
目前我們查詢到的是這樣的:
[root@hsp ~]# rpm -qa | grep mysql
mysql-libs-5.1.73-7.el6.x86_64
如果查詢到了,就刪除吧
rpm -e mysql_libs //普通刪除模式
rpm -e --nodeps mysql_libs // 強(qiáng)力刪除模式,如果使用上面命令刪除時(shí),提示有依賴的其它文件,則用該命令可以對其進(jìn)行強(qiáng)力刪除
二:安裝MySQL
-
安裝編譯代碼需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
下載MySQL 5.6.14 【這里我們已經(jīng)下載好了,看軟件文件夾】
tar xvf mysql-5.6.14.tar.gz
cd mysql-5.6.14 -
編譯安裝[源碼=》編譯]
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -
編譯并安裝
make && make install
整個(gè)過程需要30分鐘左右……漫長的等待
三:配置MySQL
- 設(shè)置權(quán)限
使用下面的命令查看是否有mysql用戶及用戶組
cat /etc/passwd 查看用戶列表
cat /etc/group 查看用戶組列表
如果沒有就創(chuàng)建
groupadd mysql
useradd -g mysql mysql - 修改/usr/local/mysql權(quán)限
chown -R mysql:mysql /usr/local/mysql
初始化配置,進(jìn)入安裝路徑(在執(zhí)行下面的指令),執(zhí)行初始化配置腳本,創(chuàng)建系統(tǒng)自帶的數(shù)據(jù)庫和表
cd /usr/local/mysql
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql [這是一條指令]
注:在啟動MySQL服務(wù)時(shí),會按照一定次序搜索my.cnf,先在/etc目錄下找,找不到則會搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,這是新版MySQL的配置文件的默認(rèn)位置!
注意:在CentOS 6.8版操作系統(tǒng)的最小安裝完成后,在/etc目錄下會存在一個(gè)my.cnf,需要將此文件更名為其他的名字,如:/etc/my.cnf.bak,否則,該文件會干擾源碼安裝的MySQL的正確配置,造成無法啟動。
修改名稱,防止干擾:
mv /etc/my.cnf /etc/my.cnf.bak
啟動MySQL
添加服務(wù),拷貝服務(wù)腳本到init.d目錄,并設(shè)置開機(jī)啟動
[注意在 /usr/local/mysql 下執(zhí)行]
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start --啟動MySQL
執(zhí)行下面的命令修改root密碼
cd /usr/local/mysql/bin
./mysql -uroot
mysql> SET PASSWORD = PASSWORD('root');
添加環(huán)境變量:
然后就可以在任何地方直接使用 mysql -u root -p去登陸了,這里設(shè)置的面為root
簡單使用:
創(chuàng)建一個(gè)數(shù)據(jù)庫 DB1
創(chuàng)建一張表 user
添加一個(gè)用戶,如果成功,說明我們的數(shù)據(jù)庫就安裝成功了!
第 17 章 大數(shù)據(jù)定制篇 Shell 編程
17.1 為什么要學(xué)習(xí) Shell 編程
17.2 Shell 是什么
畫一個(gè)示意圖:
Shell 是一個(gè)命令行解釋器,它為用戶提供了一個(gè)向 Linux 內(nèi)核發(fā)送請求以便運(yùn)行程序的界面系統(tǒng)級程序,用戶可以用 Shell 來啟動、掛起、停止甚至是編寫一些程序.
17.3 shell 編程快速入門-Shell 腳本的執(zhí)行方式
17.3.1 腳本格式要求
17.3.2 編寫第一個(gè) Shell 腳本
需求說明
創(chuàng)建一個(gè) Shell 腳本,輸出 hello world!
看案例:
17.3.3 腳本的常用執(zhí)行方式
方式 1(輸入腳本的 絕對路徑 或 相對路徑 )
方式 2(sh+腳本),不推薦
- 說明:不用賦予腳本+x 權(quán)限,直接執(zhí)行即可
17.4 shell 的變量
17.4.1 Shell 的變量的介紹
1)Linux Shell 中的變量分為,系統(tǒng)變量 和用戶自定義變量 。
2)系統(tǒng)變量:HOME、HOME、HOME、PWD、SHELL、SHELL、SHELL、USER 等等
比如:echo $HOME 等等
3)顯示當(dāng)前 shell 中所有變量:set
17.4.2 shell 變量的定義.
基本語法
快速入門
案例 1:定義變量 A
案例 2:撤銷變量 A
案例 3:聲明靜態(tài)的變量 B=2,不能 unset
案例 4:可把變量提升為全局環(huán)境變量,可供其他 shell 程序使用【一會舉例。】
17.4.3 ?定義變量的規(guī)則
17.4.4 ?將命令的返回值賦給變量(重點(diǎn))
1)A=`ls -la` 反引號,運(yùn)行里面的命令,并把結(jié)果返回給變量 A
2)A=$(ls -la) 等價(jià)于反引號
17.5 設(shè)置環(huán)境變量
17.5.1 基本語法
17.5.2 快速入門
echo $TOMCAT_HOME
注意:在輸出 TOMCAT_HOME 環(huán)境變量前,需要讓其生效
source /etc/profile
17.6 位置參數(shù)變量
17.6.1 介紹
當(dāng)我們執(zhí)行一個(gè) shell 腳本時(shí),如果希望獲取到命令行的參數(shù)信息,就可以使用到位置參數(shù)變量,比如 : ./myshell.sh 100 200 , 這個(gè)就是一個(gè)執(zhí)行 shell 的命令行,可以在 myshell 腳本中獲取到參數(shù)信息
17.6.2 基本語法
- $n (功能描述:n 為數(shù)字,$0 代表命令本身,$1-9代表第一到第九個(gè)參數(shù),十以上的參數(shù),十以上的參數(shù)需要用大括號包含,如9 代表第一到第九個(gè)參數(shù),十以上的參數(shù),十以上的參數(shù)需要用大括號包含,如9代表第一到第九個(gè)參數(shù),十以上的參數(shù),十以上的參數(shù)需要用大括號包含,如{10})
- $* (功能描述:這個(gè)變量代表命令行中所有的參數(shù),$*把所有的參數(shù)看成一個(gè)整體)
- $@(功能描述:這個(gè)變量也代表命令行中所有的參數(shù),不過$@把每個(gè)參數(shù)區(qū)分對待)
- $#(功能描述:這個(gè)變量代表命令行中所有參數(shù)的個(gè)數(shù))
17.6.3 位置參數(shù)變量應(yīng)用實(shí)例
案例:編寫一個(gè) shell 腳本 positionPara.sh , 在腳本中獲取到命令行的各個(gè)參數(shù)信息
17.7 預(yù)定義變量
17.7.1 基本介紹
就是 shell 設(shè)計(jì)者事先已經(jīng)定義好的變量,可以直接在 shell 腳本中使用
17.7.2 基本語法
- $$ (功能描述:當(dāng)前進(jìn)程的進(jìn)程號(PID))
- $! (功能描述:后臺運(yùn)行的最后一個(gè)進(jìn)程的進(jìn)程號(PID))
- $? (功能描述:最后一次執(zhí)行的命令的返回狀態(tài)。如果這個(gè)變量的值為 0,證明上一個(gè)命令正確執(zhí)行;如果這個(gè)變量的值為非 0(具體是哪個(gè)數(shù),由命令自己來決定),則證明上一個(gè)命令執(zhí)行不正確了。)
17.7.3 應(yīng)用實(shí)例
在一個(gè) shell 腳本中簡單使用一下預(yù)定義變量
17.8 運(yùn)算符
17.8.1 基本介紹
學(xué)習(xí)如何在 shell 中進(jìn)行各種運(yùn)算操作。
17.8.2 基本語法
注意 expr 運(yùn)算符間要有空格
應(yīng)用實(shí)例
案例 1:計(jì)算(2+3)X4 的值
$((運(yùn)算式))
$[運(yùn)算式]
expr
案例 2:請求出命令行的兩個(gè)參數(shù)[整數(shù)]的和.
17.9 條件判斷
判斷語句
17.9.1 ?基本語法
[ condition ](注意 condition 前后要有空格)
#非空返回 true,可使用$?驗(yàn)證(0 為 true,>1 為 false)
17.9.2 ?應(yīng)用實(shí)例
- [ atguigu ] :返回 true
- [] :返回 false
- [condition] && echo OK || echo notok : 條件滿足,執(zhí)行后面的語句
17.9.3 ?常用判斷條件
- = 字符串比較
- -lt 小于
- -le 小于等于
- -eq 等于
- -gt 大于
- -ge 大于等于
- -ne 不等于
- -r 有讀的權(quán)限 [ -r 文件 ]
- -w 有寫的權(quán)限
- -x 有執(zhí)行的權(quán)限
- -f 文件存在并且是一個(gè)常規(guī)的文件
- -e 文件存在
- -d 文件存在并是一個(gè)目錄
17.9.4 應(yīng)用實(shí)例
案例 1:“ok"是否等于"ok”
判斷語句:
案例 2:23 是否大于等于 22
判斷語句:
案例 3:/root/install.log 目錄中的文件是否存在
判斷語句:
17.10流程控制
17.10.1 if 判斷
基本語法
if [ 條件判斷式 ];then 程序 fi或者
if [ 條件判斷式 ]then程序 elif [條件判斷式]then程序 fi注意事項(xiàng):
(1)[ 條件判斷式 ],中括號和條件判斷式之間必須有空格
(2) 推薦使用第二種方式
應(yīng)用實(shí)例
案例:請編寫一個(gè) shell 程序,如果輸入的參數(shù),大于等于 60,則輸出 “及格了”,如果小于 60,則輸出 “不及格”
17.10.2 case 語句
基本語法
case $變量名 in "值 1") 如果變量的值等于值 1,則執(zhí)行程序 1 ;; "值 2") 如果變量的值等于值 2,則執(zhí)行程序 2 ;; …省略其他分支… *) 如果變量的值都不是以上的值,則執(zhí)行此程序 ;; esac應(yīng)用實(shí)例
案例 1 :當(dāng)命令行參數(shù)是 1 時(shí),輸出 “周一”, 是 2 時(shí),就輸出"周二", 其它情況輸出 “other”
17.10.3 for 循環(huán)
基本語法 1
for in 1 2 3... do程序 done應(yīng)用實(shí)例
案例 1 :打印命令行輸入的參數(shù) 【會使用到$* $@】
基本語法 2
for (( 初始值;循環(huán)控制條件 ;變量變化 )) do 程序 done應(yīng)用實(shí)例
案例 1 :
17.10.4 while 循環(huán)
基本語法 1
while [ 條件判斷式 ] do程序 done應(yīng)用實(shí)例
案例 1 :從命令行輸入一個(gè)數(shù) n,統(tǒng)計(jì)從 1+…+ n 的值是多少?
17.11 read 讀取控制臺輸入
17.11.1 基本語法
read(選項(xiàng))(參數(shù))
選項(xiàng):
-p:指定讀取值時(shí)的提示符;
-t:指定讀取值時(shí)等待的時(shí)間(秒),如果沒有在指定的時(shí)間內(nèi)輸入,就不再等待了。。
參數(shù)
變量:指定讀取值的變量名
17.11.2 應(yīng)用實(shí)例
案例 1:讀取控制臺輸入一個(gè) num 值
案例 2:讀取控制臺輸入一個(gè) num 值,在 10 秒內(nèi)輸入。
17.12函數(shù)
17.12.1 函數(shù)介紹
shell 編程和其它編程語言一樣,有系統(tǒng)函數(shù),也可以自定義函數(shù)。系統(tǒng)函數(shù)中,我們這里就介紹兩個(gè)
17.12.2 系統(tǒng)函數(shù)
-
basename 基本語法
功能:返回完整路徑最后 / 的部分,常用于獲取文件名
basename [pathname] [suffix]
basename [string] [suffix] (功能描述:basename 命令會刪掉所有的前綴包括最后一個(gè)(‘/’)字符,然后將字符串顯示出來。
選項(xiàng):
suffix 為后綴,如果 suffix 被指定了,basename 會將 pathname 或 string 中的 suffix 去掉 -
dirname 基本語法
功能:返回完整路徑最后 / 的前面的部分,常用于返回路徑部分
dirname 文件絕對路徑 (功能描述:從給定的包含絕對路徑的文件名中去除文件名(非目錄的部分),然后返回剩下的路徑(目錄的部分))
17.12.3 ?應(yīng)用實(shí)例
案例 1:請返回 /home/aaa/test.txt 的 “test.txt” 部分
案例 2:請返回 /home/aaa/test.txt 的 /home/aaa
17.12.4 自定義函數(shù)
基本語法
[ function ] funname[()] {Action;[return int;] }調(diào)用直接寫函數(shù)名:funname [值]
應(yīng)用實(shí)例
案例 1:計(jì)算輸入兩個(gè)參數(shù)的和(read), getSum
17.13Shell 編程綜合案例
需求分析
1)每天凌晨 2:10 備份 數(shù)據(jù)庫 atguiguDB 到 /data/backup/db
2)備份開始和備份結(jié)束能夠給出相應(yīng)的提示信息
3)備份后的文件要求以備份時(shí)間為文件名,并打包成 .tar.gz 的形式,比如:
2018-03-12_230201.tar.gz
4) 在備份的同時(shí),檢查是否有 10 天前備份的數(shù)據(jù)庫文件,如果有就將其刪除。
編寫一個(gè) shell 腳本。
思路分析:
代碼實(shí)現(xiàn):
第 18 章 Python 定制篇 開發(fā)平臺 Ubuntu
18.1 Ubuntu 的介紹
Ubuntu(友幫拓、優(yōu)般圖、烏班圖)是一個(gè)以桌面應(yīng)用為主的開源 GNU/Linux 操作系統(tǒng),Ubuntu是基于 GNU/Linux,支持 x86、amd64(即 x64)和 ppc 架構(gòu),由全球化的專業(yè)開發(fā)團(tuán)隊(duì)(Canonical Ltd)打造的。
專業(yè)的 Python 開發(fā)者一般會選擇 Ubuntu 這款 Linux 系統(tǒng)作為生產(chǎn)平臺.
溫馨提示:
Ubuntu 和 Centos 都是基于 GNU/Linux 內(nèi)核的,因此基本使用和 Centos 是幾乎一樣的,它們的各種指令可以通用,同學(xué)們在學(xué)習(xí)和使用 Ubuntu 的過程中,會發(fā)現(xiàn)各種操作指令在前面學(xué)習(xí) CentOS都使用過。只是界面和預(yù)安裝的軟件有所差別。
Ubuntu 下載地址:http://cn.ubuntu.com/download/
18.2 Ubuntu 的安裝
18.2.1 安裝的步驟
檢查BIOS虛擬化支持
新建虛擬機(jī)
新建虛擬機(jī)向?qū)?/strong>
填寫ubuntu系統(tǒng)信息
設(shè)置安裝ubuntu的位置和虛擬機(jī)的名稱
設(shè)置磁盤容量
回到頂部
總結(jié)
以上是生活随笔為你收集整理的Linux的使用_尚硅谷视频学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 尚硅谷前端视频总结(一)
- 下一篇: 82_Linux检测指定ip指定端口是否