文章目錄
1 Linux簡介
1.1 計算機的組成
計算機的硬件是由:主機、 輸出設備(顯示器)、 輸入設備(鍵盤和鼠標) 三大件組成。
主機是最重要的設備,在主機箱中有:主板、CPU、內存、電源、顯卡、聲卡、網卡、
硬盤、軟驅、光驅等硬件。
1.2 操作系統
操作系統(英語:Operating System,簡稱 OS)是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”上的最基本的系統軟件,任何其他軟件都必須在操作系統的支持下才能運行。
操作系統是用戶和計算機的接口,同時也是計算機硬件和其他軟件的接口。操作系統的功能包括管理計算機系統的硬件、軟件及數據資源,控制程序運行,改善人機界面,爲其它應用軟件提供支持等。實際上,用戶是不用接觸操作系統的,操作系統管理着計算機硬件資源,同時按着應用程序的資源請求,爲其分配資源,如:劃分 CPU 時間,內存空間的開闢,調用打印機等。
操作系統的主要功能是資源管理,程序控制和人機交互等。計算機系統的資源可分爲設備資源和信息資源兩大類。設備資源指的是組成計算機的硬件設備,如中央處理器,主存儲器,磁盤存儲器,打印機,顯示器,鍵盤設備和鼠標等。信息資源指的是存放於計算機內的各種數據,如文件,程序庫,系統軟件和應用軟件等。
操作系統分類:
Windows操作系統:微軟公司Windows操作系統 ,例如常用在個人計算機的Windows XP,Windows Vista,Windows 7,Windows 8,windows 10 等。 用在服務器端的 Windows Server 2003,Windows Server 2008 等。
Unix 和 和類 Unix(Linux)操作系統: unix 系列的 SUN Solaris,IBM-AIX,HP-UX,FreeBSD 等,類 Unix(linux)的 Red Hat Linux,CentOS,Debian,Ubuntu 等。
Mac 操作系統:是 蘋果公司 推出的 個人電腦 系列產品,由蘋果公司設計、開發和銷售。 蘋果公司 不但生產 Mac 的大部分硬件,Mac 所用的操作系統都是它自行開發的。有自己的處理器,自己的顯示器等。MAC 系統基於 UNIX 的核心繫統增強了系統的穩定性、性能以及響應能力。
1.3 Linux操作系統
在linux發佈之前,有一種操作系統叫unix,由於價格昂貴不開放源碼,所以李納斯·託瓦茲(Linus Torvalds)決心要開發自己免費的操作系統,Linux借鑑了unix的思想,但沒有一行unix的代碼,linux系統是從unix系統發展出來的。
Linux 英文解釋爲 Linux is not Unix。現在業界有一種說法叫:類unix
Linux:有廣義和狹義之分:
① 狹義的linux指的是linux kernel
② 廣義的 linux 指的是 linux kernel+軟件包
1.4 虛擬機
1.4.1 介紹
虛擬機(Virtual Machine)指通過軟件模擬的具有完整硬件系統功能的、運行在一個完全隔離環境中的完整計算機系統。
虛擬系統通過生成操作系統的全新虛擬鏡像,它具有真實操作系統完全一樣的功能,在虛擬機中所有操作都是在這個全新的獨立的虛擬系統裏面進行,可以獨立安裝運行軟件,保存數據,擁有自己的獨立桌面,不會對其他的系統產生任何影響 ,而且能夠和現有操作系切換。一個物理計算上可以同時運行多個不同的操作系統。
1.4.2 安裝VMware虛擬機
參考鏈接:https://blog.csdn.net/qq_40950957/article/details/80467513
1.4.3 centOS
CentOS,全稱 Community Enterprise Operating System,中文名爲社區企業操作系統。是一個基於 Red Hat Linux 提供的可自由使用源代碼的企業級 Linux 發行版本。
1.4.4 安裝centOS
參考鏈接:https://blog.csdn.net/qq_39135287/article/details/83993574
1.5 linux目錄說明
- bin -> usr/bin : 這個目錄存放最經常使用的命令
- boot : 這個目錄存放啓動 Linux 時使用的一些核心文件,包括一些連接文件以及鏡像文件
- dev: dev 是 Device(設備)的縮寫, 該目錄下存放的是 Linux 的外部設備,Linux 中的設備也是以文件的形式存在
- etc : 這個目錄存放所有的系統管理所需要的配置文件
- home:用戶的主目錄,在 Linux 中,每個用戶都有一個自己的目錄,一般該目錄名以用戶的賬號命名
- lib->user/lib: 這個目錄存放着系統最基本的動態連接共享庫,其作用類似於 Windows 裏的 DLL 文件,幾乎所有的應用程序都需要用到這些共享庫。
- mnt : 系統提供該目錄是爲了讓用戶臨時掛載別的文件系統,我們可以將光驅掛載在/mnt/上,然後進入該目錄就可以查看光驅裏的內容
- opt: 這是給 linux 額外安裝軟件所存放的目錄。比如你安裝一個 Oracle 數據庫則就可以放到這個目錄下,默認爲空。
- root : 該目錄爲系統管理員目錄,root 是具有超級權限的用戶
- tmp: 這個目錄是用來存放一些臨時文件的。
- usr: 這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似與windows 下的 program files 目錄。
- var : 這個目錄存放着在不斷擴充着的東西,我們習慣將那些經常被修改的文件存放在該目錄下,比如運行的各種日誌文件。
1.6 遠程工具
實際工作中,linux 系統都不會在我們自己的電腦上,linux 系統安裝在機房的服務器上,我們操作 linux 不可能跑到機房去,所以我們需要有一個工具,能在公司通過網絡遠程連接到機房的 linux 服務器上。
XShell ,SecureCRT , putty 是遠程工具
Xftp , WinSCP 是文件管理工具
1.6.1 Xshell 下載
參考鏈接:https://blog.csdn.net/weixin_40928253/article/details/80621724
1.6.2 Xftp 下載
參考鏈接:https://blog.csdn.net/xc_123/article/details/92806570
2 Linux命令
2.1 磁盤管理
命令 | 功能 |
---|---|
cd 目錄名 | 切換目錄 |
ll | 列出當前目錄下的目錄及文件的詳細信息 |
ls | 列出當前目錄下的目錄名及文件名 |
pwd | 顯示當前所在目錄位置 |
pwd 顯示當前目錄
cd usr/local 切換到/usr/local目錄下
ll 顯示該目錄下的文件詳細信息
ls 顯示該目錄下的文件名
2.2 文件管理
命令 | 功能 |
---|---|
mkdir 文件夾名 | 創建目錄 |
touch 文件名 | 創建文件 |
rm 文件名 | 刪除文件 |
rm -rf 文件夾名(參數-r表示遞歸 用於文件夾類操作;-f表示強制,使用後將不會有再次確認選項) | 刪除整個文件夾 |
cp 被複制的文件名 新文件名 | 複製的文件名 |
cp -rf 被複制的文件夾名 新文件夾名 | 複製整個文件夾 |
cat 文件路徑 | 查看文件全部內容 |
more 文件路徑(執行命令後按回車鍵表示按行展示,空格鍵表示按頁展示) | 分頁查看文件內容 |
head 文件名 -n 數字 (或者 head 文件名 -數字 ) | 查看文件開頭的n行數據 |
tail 文件名 -n 數字 (或者 tail 文件名 -數字 ) | 查看文件結尾的n行數據 |
grep [參數] 要搜索的字符串 文件名 | 文件內搜索字符串,參數 -i 表示不區分大小寫,-w表示是一個完整單詞 |
創建文件a.txt 和文件夾test
複製文件和文件夾
查看文件內容(已經用vi編輯器在a.txt裏寫了一些內容,後面會說到vi編輯器的用法)
使用cat 或者 more
使用head 或者tail
查看a.txt的前三行內容 head -3 a.txt
查看a.txt的結尾五行內容 tail -5 a.txt
文件內搜索
在a.txt中搜索“java” grep java a.txt
在a.txt中搜索以單個字符串出現的“java” grep -w java a.txt 這裏的結果中沒有“javascript”
在a.txt中搜索以單個字符串出現的“java”,且不區分大小寫 grep -wi java a.txt (忘記舉例了。。)
刪除文件和文件夾
2.3 系統命令
命令 | 功能 |
---|---|
date | 顯示系統當前時間 |
su 用戶名 | 切換用戶 |
reboot | 重啓系統 |
clear | 清除屏幕 |
shutdown -h now | 關機 |
ps -ef | 查看系統當前運行的進程(-e:顯示當前所有進程;-f:顯示 UID,PPID,C 與 STIME 欄位信息) |
kill pid | 結束進程 |
kill -9 pid | 強制結束進程 |
2.4 壓縮/解壓
命令 | 功能 |
---|---|
tar -zcvf 歸檔文件名 要歸檔文件列表 | 創建壓縮文件 |
tar -tf 歸檔文件名 | 查看壓縮文件 |
tar -zxvf 已歸檔文件名 | 解壓文件 |
常用參數:
z : 使用壓縮,生成的文件名是 xxx.tar.gz 這是 linux 中常用的壓縮格式。
c : 創建壓縮文檔
v : 顯示壓縮,解壓過程中處理的文件名
f : 指定歸檔文件名, tar 參數後面是歸檔文件名
x : 從歸檔文件中釋放文件,就是解壓。
t : 列出歸檔文件內容,查看文件內容
C: 解壓到指定目錄,使用方式 -C 目錄 , C 是大寫的。
壓縮*.txt 文件到 yasuo.tar.gz ------------- tar -zcvf .txt yasuo.tar.gz
參數中只有v可以省略。省略後將不顯示被壓縮的文件名。
查看壓縮文件 yasuo.tar.gz 的內容
將壓縮文件yasuo.tar.gz解壓到當前目錄------- tar -zxvf yasuo.tar.gz
先強制刪除了當前目錄的.txt文件
再將壓縮文件解壓
查看目錄
又重新有了a.txt ,b.txt文件
解壓文件yasuo.tar.gz到指定目錄test------- tar -zxvf yasuo.tar.gz -C test/
查看test目錄 發現裏面有a.txt ,b.txt文件,解壓成功
2.5 網絡通訊
命令 | 功能 |
---|---|
ipconfig | 查看ip信息 |
ping ip或者域名 | 測試網絡連通 |
2.6 網絡訪問
命令 | 功能 |
---|---|
curl | 測試網絡訪問;模擬用戶訪問;可抓取頁面首頁內容 |
wget 下載資源的地址 | 下載 |
2.7 權限管理
2.7.1 介紹
權限指用戶或程序能夠對目錄,文件執行的操作。
執行ll 顯示文件和目錄詳細信息。
第一列表示文件類型:
-:表示文件
l:軟鏈接文件(windows 快捷方式)
d:目錄
c: 字符設備文件,一次傳輸一個字節的設備被稱爲字符設備。例如鍵盤,鼠標
linux 權限機制採用 UGO 模式。其中 u(user)表示所屬用戶、g(group)表示所屬組、o(other)表示除了所屬用戶、所屬組之外的情況。
A、讀權限:讀取文件內容,對文件執行catmore,less這樣的查看命令,對目錄來說可以讀取目錄中文件列表
r-----read 讀權限 4
B、寫權限: 編輯、新增、修改文件內容
w-----write 寫權限 2
C 、 執行權限:進入目錄 執行權限:進入目錄
x-----execute 執行權限 1
D 、 常見權限設置
rwx=4+2+1=7
常見644、755、777三種權限。
創建文件用戶就是文件的擁有者, 用戶所在的組就是文件的所在組。除了創建文件的用戶都是其他用戶。root 有最高的權限。
2.7.2 權限設置
命令 | 功能 |
---|---|
chmod 權限 文件/目錄 | 修改文件權限 |
chown 新的擁有者 被修改的文件 | 修改文件擁有者 |
改變test文件夾的權限
chmod 777 test 表示將test文件的權限修改爲 rwxrwxrwx ,UGO都對該文件有讀、寫、執行權限。
改變test文件的擁有者
從root 到 luna
2.8 管道和重定向
命令 | 功能 |
---|---|
> | 重定向 |
>> | 重定向輸出追加 |
命令1 l 命令2 l 命令n | 管道,以前一個命令的輸出作爲後面命令的輸入 |
echo “hello linux”--------------echo表示在屏幕上輸出內容
echo “hello linux” >a.txt----------將內容重定向到a.txt
cat a.txt | grep hello ----------在a.txt文件內容中查找“hello”字符串
echo “springmvc java”>>a.txt------------在a.txt文件內容中追加輸出“springmvc java”
cat a.txt | grep spsring ----------在a.txt文件內容中查找“spring”字符串
另外,管道還常用於
1、輸出字符串 統計單詞數及字符個數-------echo “luna java linux girl” | wc
輸出1 4 21 表示內容是1行4個單詞21個字符
2、查看某個進程是否存在---------- ps -ef | grep “cat”
2.9 vi 和 vim編輯器
2.9.1 創建vi編輯器
語法:vi 文件名
說明:如果文件存在,則打開該文件,如果參文件不存在,則會新建該文件(不是立即創建,而是在保存的時候創建)
2.9.2 vi常用操作
vi 操作分爲 命令模式和 編輯模式
命令模式:按 Esc 鍵,進入命令模式,命令模式下無法編輯
編輯模式:按 a 或者 i 字母鍵,進入編輯模式(此時,底部會出現 insert)。
在命令模式下按 :wq (冒號鍵 w 鍵 q 鍵)保存退出,按 :q! 不保存退出。
從命令模式進入編輯模式按 a 或者 i 字母鍵。
從編輯模式進入命令模式按 Esc 鍵。
編輯文件命令
- dd:刪除光標所在行
- yy:複製光標所在行到緩衝區
- p:粘貼緩衝區中的內容
- gg:光標回到文件第一行
- GG:光標回到文件最後一行
- ^ :光標移動至當前行的行首
- $ :光標移動至當前行的行尾
- /關鍵字:按斜槓/鍵,可以輸入想搜索的字符,然後確定進行搜索,如果第一次查找的關鍵字不是想要的,可以一直按 n 鍵往後查找到想要的關鍵字爲止
2.10 安裝軟件命令
2.10.1 yum命令介紹
yum: Yum(全稱爲 Yellow dog Updater, Modified):是一個在 RedHat、Fedora 以及 CentOS中的一種軟件包管理器,能夠從指定的服務器自動下載軟件包並且進行安裝,可以自動處理軟件包之間的依賴性關係,並且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。
2.10.2 yum使用
命令 | 功能 |
---|---|
yum install 安裝包名稱 | 安裝指定的軟件 |
yum remove 安裝包名稱 | 刪除軟件包 |
yum list installed | 列出所有已安裝的軟件包 |
yum clean all(yum命令下載的安裝包都在/var/cache/yum 目錄) | 清除已安裝軟件包 |
2.11 常用快捷鍵
shift + insert 是粘貼
tab 是補全代碼
y:同意
n:否定
訪問歷史命令,方向鍵的上下箭頭
3 開發相關
3.1 JDK下載及安裝
將安裝包用xftp傳入linux,在linux解壓並配置。
參考鏈接:https://www.jianshu.com/p/f000e05f3512
3.2 tomcat下載及安裝
參考鏈接:https://blog.csdn.net/a_18397219871/article/details/79466392
3.3 MySQL下載及安裝
參考鏈接:https://blog.csdn.net/qq_37598011/article/details/93489404
3.4 web項目部署到linux系統
參考鏈接:https://blog.csdn.net/weixin_42369687/article/details/89228941