Linux是一套免費使用和自由傳播的類似Unix操作系統,一般的WEB項目都是部署都是放在Linux操作系統上面。 Linux是一個基于POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的Unix工具軟件、應用程序和網絡協議。它支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作系統。
Windows是微軟開發的操作系統,民用操作系統,可用于娛樂、影音、上網。 Windows操作系統具有強大的日志記錄系統和強大的桌面應用。好處是它可以幫我們實現非常多絢麗多彩的效果,可以非常方便去進行娛樂、影音、上網。
Linux的應用相對單純很多,沒有什么絢麗多彩的效果,因此Linux的性能是非常出色的,可以完全針對機器的配置有針對性的優化,
簡單來說Windows適合普通用戶進行娛樂辦公使用,Linux適合軟件開發部署。
Linux | Unix系統 |
---|---|
提供付費和免費分發。 | 不同級別的Unix使用不同的付費結構。 |
Linux主要使用帶有可選命令行界面的GUI | Unix使用命令行界面 |
Linux OS是便攜式的,可以在不同的硬盤中執行 | Unix OS不可移植。 |
Linux由全球Linux社區開發。 | Unix由AT&T開發人員開發。 |
Linux是免費的。它是在GNU許可下通過互聯網下載的。 | 大多數類似Unix的操作系統不是免費的。 |
Linux用于家用PC,電話等。 | Unix用于服務器系統。 |
Bash是Brian Fox為GNU項目編寫的Unix shell和命令處理器。它是免費軟件,可以代替Bourne Shell。這是一個解釋后的未編譯過程,也可以在終端窗口中運行。這使用戶可以編寫命令并引起動作。Bash能夠從Shell腳本讀取命令。
1)BASH 命令區分大小寫,而 DOS 命令則不區分;
2)在 BASH 下,/ character 是目錄分隔符,\作為轉義字符。在 DOS 下,/用作命令參數分隔符,\是目錄分隔符
3)DOS 遵循命名文件中的約定,即 8 個字符的文件名后跟一個點,擴展名為 3 個字符。BASH 沒有遵循這樣的慣例。
圖形用戶界面(Graphical User Interface,簡稱 GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計算機操作用戶界面。
圖形用戶界面是一種人與計算機通信的界面顯示格式,允許用戶使用鼠標等輸入設備操縱屏幕上的圖標或菜單選項,以選擇命令、調用文件、啟動程序或執行其它一些日常任務。與通過鍵盤輸入文本或字符命令來完成例行任務的字符界面相比,圖形用戶界面有許多優點。
CLI是命令行界面(英語**:command-line interface**,縮寫]),是在圖形用戶界面得到普及之前使用最為廣泛的用戶界面,它通常不支持鼠標。用戶通過鍵盤輸入指令,計算機接收到指令后,予以執行。也有人稱之為字符用戶界面(CUI)。
通常認為,命令行界面(CLI)沒有圖形用戶界面(GUI)那么方便用戶操作。因為,命令行界面的軟件通常需要用戶記憶操作的命令,但是,由于其本身的特點,命令行界面要較圖形用戶界面節約計算機系統的資源。在熟記命令的前提下,使用命令行界面往往要較使用圖形用戶界面的操作速度要快。所以,圖形用戶界面的操作系統中,都保留著可選的命令行界面。
開源允許你將軟件(包括源代碼)免費分發給任何感興趣的人。然后,人們可以添加功能,甚至可以調試和更正源代碼中的錯誤。它們甚至可以讓它運行得更好,然后再次自由地重新分配這些增強的源代碼。這最終使社區中的每個人受益。
內核:內核是操作系統的心臟。它充當軟件和硬件之間的橋梁。如果軟件請求硬件,則內核將在軟件和硬件之間傳遞數據。例如,如果您想播放一首歌曲,則應啟動默認播放器,它會請求內核播放一首歌曲。大多數Android手機使用Linux內核。
Shell:Shell是一個計算機程序,充當用戶和內核之間的接口。用戶可以通過在Shell上編寫程序,命令和腳本來與內核進行通信。它接受人類可讀的命令,并將其轉換為內核可理解的語言。
GUI: 表示圖形用戶界面。它是一種人機界面,使用可以通過鼠標操作的窗口,圖像,圖標和菜單。電子產品中的大多數現代應用程序都通過GUI與用戶通信。GUI是使用按鈕,菜單,消息框等的圖形和文本交互的組合。
系統實用程序:這些是允許用戶管理計算機的軟件功能。
應用程序:旨在執行一組任務的一組功能。
每個文件或目錄都具有3個權限
Read--它是指只有他們可以讀取該文件。
Write--這是指他們可以寫入文件或修改目錄的文件。
Execute--影響用戶執行文件或查看目錄文件的能力。
每個文件和目錄都有三個基于用戶的權限組。
所有者:所有者只需要訪問文件或目錄,就不會影響其他用戶的操作。
組:這些權限僅適用于已分配給文件或目錄的組。它們不會影響其他用戶的操作。
所有用戶:這些權限適用于系統上的所有用戶。
ext,ext2,ext3,ext4,jfs,xfs,btrfs,ufs,autofs,devpts,ntfs和交換。
vi編輯器中有三種模式。他們是
● 命令模式/常規模式
● 插入模式/編輯模式。
● 防爆模式/更換模式。
Linux中的五個過程狀態。他們是
新建/就緒:已創建一個新進程并準備運行。
正在運行:正在執行該進程。
阻止/等待:進程正在等待用戶輸入。
終止/完成:進程已完成執行或被操作系統終止。
僵尸:進程已刪除,但仍在進程表中存在有關該進程的信息。
管道(pipe)、流管道(s_pipe)、有名管道(FIFO)
信號(signal)
消息隊列
共享內存
信號量
套接字(socket)
root 帳戶就像一個系統管理員帳戶,允許你完全控制系統。你可以在此處創建和維護用戶帳戶,為每個帳戶分配不同的權限。每次安裝 Linux 時都是默認帳戶。
● /bin:存放二進制可執行文件(ls,cat,mkdir 等),常用命令一般都在這里;
● /boot:存放用于系統引導時使用的各種文件;
● /dev:用于存放設備文件;
● /etc:存放系統管理和配置文件;
● /home:存放所有用戶文件的根目錄,是用戶主目錄的基點,比如用戶 user 的主目錄就是/home/user,可以用~user 表示;
● /lib :存放著和系統運行相關的庫文件 ;
● /lost+found:這個目錄平時是空的,系統非正常關機而留下“無家可歸”的文件(windows 下叫什么.chk)就在這里。
● /mnt:系統管理員安裝臨時文件系統的安裝點,系統提供這個目錄是讓用戶臨時掛載其他的文件系統;
● /proc:虛擬文件系統目錄,是系統內存的映射。可直接訪問這個目錄來獲取系統信息;
● /root:超級用戶(系統管理員)的主目錄(特權階級 o);
● /sbin: 存放二進制可執行文件,只有 root 才能訪問。這里存放的是系統管理員使用的系統級別的管理命令和程序。如 ifconfig 等;
● /tmp:用于存放各種臨時文件,是公用的臨時文件存儲點;
● /usr:用于存放系統應用程序/opt:額外安裝的可選應用程序包所放置的位置。一般情況下,我們可以把 tomcat 等都安裝到這里;
● /var:用于存放運行時需要改變數據的文件,也是某些大文件的溢出區,比方說各種服務的日志文件(系統啟動日志等。)等;
功能:顯示用戶當前所在的目錄
格式:pwd
功能:對于目錄,該命令列出該目錄下的所有子目錄與文件。對于文件,將列出文件名以及其他信息
格式:ls [選項] [目錄或文件]
常用選項表:
選項 | 說明 |
---|---|
-a | 查看當前目錄下的文件,包括隱藏文件 |
-l | 長格式顯示文件 |
-lh | 以方便閱讀的長格式顯示 |
功能:改變工作目錄。將當前工作目錄改變到指定的目錄下
格式:cd 目錄名
常用命令:
命令 | 說明 |
---|---|
cd .. | 返回上一級目錄 |
cd ../.. | 返回上兩級目錄 |
cd ~ | 切換到家目錄 |
cd / | 切換到根目錄 |
cd /home/lx/linux1/ | 絕對路徑:從家目錄出發,直到想要去的目錄 |
cd …/lx/ | 相對路徑:從當前目錄出發,直到想去的目錄 |
Linux的命令有很多參數,我們不可能全記住,我們可以通過查看聯機手冊獲取幫助。訪問Linux手冊頁的命令是man
格式:man 其他命令
功能:用于查找文件里符合條件的字符串
格式:grep [選項] '查找字符串' 文件名
常用選項:
選項 | 說明 |
---|---|
-a | 將binary文件以text文件的方式查找數據 |
-c | 計算找到 ‘查找字符串’ 的次數 |
-i | 忽略大小寫的區別,即把大小寫視為相同 |
-v | 反向選擇,即顯示出沒有 ‘查找字符串’ 內容的那一行 |
功能:用來在指定目錄下查找文件
格式:find [路徑] [選項] 操作
常用選項:
選項 | 說明 |
---|---|
-name test | 查詢指定目錄下,命名為test的文件 |
-size +100k | 查詢指定目錄下,文件大于100K的文件 |
-ctime n | 查詢指定目錄下,在過去n天內被修改過的文件 |
功能:用來列出系統中當前正在運行的那些進程,類似于 windows 的任務管理器。
格式:ps [選項]
常用選項:
選項 | 說明 |
---|---|
-A | 列出所有的進程 (重要) |
-ef | 查看全格式的全部進程 (重要) |
-w | 顯示加寬可以顯示較多的資訊 |
-au | 顯示較詳細的資訊 |
-aux | 顯示所有包含其他使用者的行程 |
功能:用于刪除執行中的程序或工作
格式:kill [選項]/[信號] 進程號
常用選項:
選項 | 說明 |
---|---|
-l | force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋 |
-s | 若目標文件 (destination) 已經存在時,就會詢問是否覆蓋 |
常用信號:
信號 | 說明 |
---|---|
-1(HUP) | 重新加載進程 |
-9(KILL) | 殺死一個進程。(重點) |
-15(TERM) | 正常停止一個進程。 |
功能:查看測試項目的日志
說明:一般測試的項目里面,有個logs的目錄文件,會存放日志文件,有個xxx.out的文件,可以用tail -f 動態實時查看后端日志
格式:tail [選項] 文件名
常用選項:
選項 | 說明 |
---|---|
-f | 實時讀取 |
-1000 | 查看最近1000行日志 |
功能:查看端口
格式:netstat -anp | grep 端口號
功能:用于查看和更改網絡接口的地址和參數,包括IP地址、網絡掩碼、廣播地址,使用權限是超級用戶。
功能:檢測是否與主機連通
格式:ping 地址
tar -zxvf redis-3.2.8.tar.gz ;解壓到當前文件夾
tar -zxvf redis-3.2.8.tar.gz -C /opt/java/ ;-C指解壓到指定目錄
tar -zcvf redis-3.2.8.tar.gz redis-3.2.8/ ;語法 tar -zcvf 壓縮后的名稱 要壓縮的文件
tar -zcvf 壓縮后的文件(可指定目錄) 要壓縮的文件(可指定目錄)
1.man 命令名
2.命令名 – help
3.info cat 命令名 (查看命令的功能,來源,選項等)
4.whatis 命令名
5.通過網絡途徑
關機命令:shutdown -h 【now | 10(分鐘) | 20:25】
重啟命令:reboot
列出已經安裝的包: yum list installed
安裝軟件: yum install package_name
更新軟件: yum update package_name
卸載軟件:yum remove package_name //只刪除軟件包保留數據文件和配置文件
可以執行:yum erase package_name
功能:創建空目錄
格式:mkdir [選項] [路徑] 文件名
常用選項表:
選項 | 說明 |
---|---|
-p | 層級創建 |
-v | 顯示創建順序 |
功能:刪除空目錄 不能刪除非空目錄,不能刪除文件
格式:rmdir [-p] [路徑] 目錄名
常用選項表:
選項 | 說明 |
---|---|
-p | 當子目錄被刪除后如果父目錄也變成空目錄的話,就連帶父目錄一起刪除 |
功能:新建空文件
格式:touch [路徑] 文件名 (可以多個)
功能:刪除文件或目錄
格式:rm [選項] 文件名
常用選項表:
選項 | 說明 |
---|---|
-f | 強制刪除 |
-r | 多級刪除 |
-rf | 強制刪除給定目錄下所有文件和目錄 |
rm 和 rmdir 的區別:
rm 有選項, rmdir 沒有選項
rmdir 只能刪除空目錄,不能刪文件
rm 帶上選項-r可以刪除非空目錄
功能:mv命令是move的縮寫,可以用來移動文件或者將文件改名(move(rename)files),是Linux系統下常用的命令,經常用來備份文件或者目錄。
格式:mv [選項] [路徑] 舊文件名 [新路徑][新文件名]
常用選項:
選項 | 說明 |
---|---|
-f | force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋 |
-i | 若目標文件 (destination) 已經存在時,就會詢問是否覆蓋 |
注意:
如果只移動不改名字,新名字可以不寫
如果移動的同時改名字,新名字一定要寫
功能: 復制文件或目錄
說明:cp指令用于復制文件或目錄,如同時指定兩個以上的文件或目錄,且最后的目的地是一個已經存在的目錄,則它會把前面指定的所有文件或目錄復制到此目錄中。若同時指定多個文件或目錄,而最后的目的地并非一個已存在的目錄,則會出現錯誤信息
格式:cp [選項] [路徑] 舊文件名 [新路徑][新文件名]
常用選項表:
選項 | 說明 |
---|---|
-f 或 --force | 強行復制文件或目錄, 不論目的文件或目錄是否已經存在 |
-i 或 --interactive |
覆蓋文件之前先詢問用戶 |
-r | 遞歸處理,將指定目錄下的文件與子目錄一并處理。若源文件或目錄的形態,不屬于目錄或符號鏈接,則一律視為普通文件處理 |
-R 或 --recursive | 遞歸處理,將指定目錄下的文件及子目錄一并處理 |
功能: 查看目標文件的內容
格式:cat [選項] 文件名
常用選項表:
選項 | 說明 |
---|---|
-b | 對非空輸出行編號 |
-n | 對輸出的所有行編號 |
-s | 不輸出多行空行 |
基本上 vi/vim 共分為三種模式,分別是命令模式(Command mode),輸入模式(Insert mode)和底線命令模式(Lastline mode)。
常用的幾個命令:
i 切換到輸入模式,以輸入字符。
: 切換到底線命令模式,以在最底一行輸入命令。
ESC:退出輸入模式,切換到命令模式
q 退出程序
w 保存文件
chmod命令主要用于修改、設置文件權限,chmod 修改文件權限主要有兩種方式: 字母法與數字法
1)字母法
u user 表示該文件的所有者
g group 表示與該文件的所有者屬于同一組( group )者,即用戶組
o other 表示其它用戶組
a all 表示這三者皆是
-------------------------------
+增加權限
- 撤銷權限
= 設定權限
-----------------------------
r read 表示可讀取,對于一個目錄,如果沒有r權限,那么就意味著不能通過ls查看這個目錄的內容。
w write 表示可寫入,對于一個目錄,如果沒有w權限,那么就意味著不能在目錄下創建新的文件。
x excute 表示可執行,對于一個目錄,如果沒有x權限,那么就意味著不能通過cd進入這個目錄。
-------------------------
用法:chmod + 設置模式 + 文件名
中間的設置模式,要分別對u(user), g(group), o(other)設置權限。
chmod u+rwx, g+rwx, o+rwx filename 改命令說明對filename文件, 賦予user、group、other均有read、write、excute的權限。
2)數字法
數字法是基于字母法的表示,如果字母法懂了,數字法就好懂,并且易于使用。
r (read) ----------------> 4
w (write) ----------------> 2
x (excute) ----------------> 1
如:數字法:chmod 777 文件名 <-----------對應--------------> 字母法: chmod u+rwx, g+rwx, o+rwx 文件名
第一個數字7:代表用戶 u 的權限 rwx, 4 ® + 2 (w) + 1 (x) = 7
第二個數字7:代表用戶 g 的權限 rwx, 4 ® + 2 (w) + 1 (x) = 7
第三個數字7:代表用戶 o 的權限 rwx, 4 ® + 2 (w) + 1 (x) = 7
再次舉例說明:
數字法:chmod 755 filename 對應 字母法: chmod u+rwx, g+rx, o+rx filename
數字法:chmod 751 filename 對應 字母法: chmod u+rwx, g+rx, o+x filename
數字法:chmod 765 filename 對應 字母法: chmod u+rwx, g+rw, o+rx filename