一、操作系統(tǒng)介紹
1.計算機的歷史
第一代計算機(1946~1958)
電子管為基本電子器件;使用機器語言和匯編語言;主要應用于國防和科學計算;運算速度每秒幾千次至幾萬次觉壶。
第二代計算機(1958~1964)
晶體管為主要器件;軟件上出現(xiàn)了操作系統(tǒng)和算法語言;運算速度每秒幾萬次至幾十萬次竟稳。
第三代計算機(1964~1971)
普遍采用集成電路;體積縮小;運算速度每秒幾十萬次至幾百萬次诬留。
第四代計算機(1971~ )
以大規(guī)模集成電路為主要器件;運算速度每秒幾百萬次至上億次诉探。
二终蒂、操作系統(tǒng)的分類
常見分類:
手機:Android恬吕、IOS
電腦:UNIX签则、LINUX、MacOS铐料、Windows
1.UNIX
UNIX是一個強大的多用戶渐裂、多任務操作系統(tǒng),支持多種處理器架構(gòu)钠惩,按照操作系統(tǒng)的分類柒凉,屬于分時操作系統(tǒng)。UNIX 最早由Ken Thompson和Dennis Ritchie于1969年在美國AT&T的貝爾實驗室開發(fā)篓跛。
類Unix(Unix-like)操作系統(tǒng)指各種傳統(tǒng)的Unix以及各種與傳統(tǒng)Unix類似的系統(tǒng)膝捞。它們雖然有的是自由軟件,有的是商業(yè)軟件愧沟,但都相當程度地繼承了原始UNIX的特性蔬咬,有許多相似處鲤遥,并且都在一定程度上遵守POSIX規(guī)范。類Unix系統(tǒng)可在非常多的處理器架構(gòu)下運行林艘,在服務器系統(tǒng)上有很高的使用率盖奈,例如大專院校或工程應用的工作站狐援。
2.Linux
基于Linux的操作系統(tǒng)是20世紀1991年推出的一個多用戶钢坦、多任務的操作系統(tǒng)。它與UNIX完全兼容啥酱。Linux最初是由芬蘭赫爾辛基大學計算機系學生Linus Torvalds在基于UNIX的基礎上開發(fā)的一個操作系統(tǒng)的內(nèi)核程序,Linux的設計是為了在Intel微處理器上更有效的運用爹凹。其后在理查德·斯托曼的建議下以GNU通用公共許可證發(fā)布,成為自由軟件Unix變種镶殷。它的最大的特點在于他是一個源代碼公開的自由及開放源碼的操作系統(tǒng)禾酱,其內(nèi)核源代碼可以自由傳播。
經(jīng)歷數(shù)年的披荊斬棘批钠,自由開源的Linux系統(tǒng)逐漸蠶食以往專利軟件的專業(yè)領域宇植,例如以往計算機動畫運算巨擘──SGI的IRIX系統(tǒng)已被Linux家族及貝爾實驗室研發(fā)小組設計的九號計劃與Inferno系統(tǒng)取代,皆用于分散表達式環(huán)境埋心。它們并不像其他Unix系統(tǒng)指郁,而是選擇自帶圖形用戶界面。九號計劃原先并不普及拷呆,因為它剛推出時并非自由軟件闲坎。Linux有各類發(fā)行版,通常為GNU/Linux茬斧,如Debian(及其衍生系統(tǒng)Ubuntu腰懂、Linux Mint)、Fedora项秉、openSUSE等绣溜。Linux發(fā)行版作為個人計算機操作系統(tǒng)或服務器操作系統(tǒng),在服務器上已成為主流的操作系統(tǒng)娄蔼。
3.MacOSX
MacOS是一套運行于蘋果Macintosh系列電腦上的操作系統(tǒng)怖喻。Mac OS是首個在商用領域成功的圖形用戶界面。Macintosh組包括比爾·阿特金森(Bill Atkinson)岁诉、杰夫·拉斯金(Jef Raskin)和安迪·赫茨菲爾德(Andy Hertzfeld)锚沸。Mac OS X于2001年首次在商場上推出。它包含兩個主要的部分:Darwin涕癣,是以BSD原始代碼和Mach微核心為基礎哗蜈,類似Unix的開放原始碼環(huán)境。
4.Windows
Windows是由微軟公司成功開發(fā)的操作系統(tǒng).Windows是一個多任務的操作系統(tǒng),他采用圖形窗口界面距潘,用戶對計算機的各種復雜操作只需通過點擊鼠標就可以實現(xiàn)炼列。
MicrosoftWindows系列操作系統(tǒng)是在微軟給IBM機器設計的MS-DOS的基礎上設計的圖形操作系統(tǒng)。Windows系統(tǒng)音比,如Windows 2000唯鸭、Windows XP皆是創(chuàng)建于現(xiàn)代的Windows NT內(nèi)核。NT內(nèi)核是由OS/2和OpenVMS等系統(tǒng)上借用來的硅确。Windows可以在32位和64位的Intel和AMD的處理器上運行,但是早期的版本也可以在DEC Alpha明肮、MIPS與PowerPC架構(gòu)上運行菱农。雖然由于人們對于開放源代碼作業(yè)系統(tǒng)興趣的提升,Windows的市場占有率有所下降柿估,但是到2004年據(jù)庫服務等一些功能循未。
WindowsXP在2001年10月25日發(fā)布,2004年8月24日發(fā)布服務包2秫舌,2008年4月21日發(fā)布最新的服務包3的妖。微軟上一款操作系統(tǒng)Windows Vista(開發(fā)代碼為Longhorn)于2007年1月30日發(fā)售。Windows Vista增加了許多功能足陨,尤其是系統(tǒng)的安全性和網(wǎng)絡管理功能嫂粟,并且其擁有界面華麗的Aero Glass。但是整體而言墨缘,其在全球市場上的口碑卻并不是很好星虹。Windows 8微軟在2012年10月正式推出,系統(tǒng)有著獨特的metro開始界面和觸控式交互系統(tǒng)镊讼,2013年10月17日晚上7點宽涌,Windows 8.1在全球范圍內(nèi),通過Windows上的應用商店進行更新推送蝶棋。2014年1月22日卸亮,微軟在美國舊金山舉行發(fā)布會,正式發(fā)布了Windows 10消費者預覽版玩裙。
5.iOS
iOS操作系統(tǒng)是由蘋果公司開發(fā)的手持設備操作系統(tǒng)兼贸。iOS與蘋果的Mac OS X操作系統(tǒng)一樣,它也是以Darwin為基礎的献酗,因此同樣屬于類Unix的商業(yè)操作系統(tǒng)寝受。原本這個系統(tǒng)名為iPhone OS,直到2010年6月7日WWDC大會上宣布改名為iOS罕偎。截止至2011年11月很澄,根據(jù)Canalys的數(shù)據(jù)顯示,iOS已經(jīng)占據(jù)了全球智能手機系統(tǒng)市場份額的30%,在美國的市場占有率為43%甩苛。
6.Android
Android是一種以Linux為基礎的開放源代碼操作系統(tǒng)蹂楣,主要使用于便攜設備。Android操作系統(tǒng)最初由Andy Rubin開發(fā)讯蒲,最初主要支持手機痊土。2005年由Google收購注資,并組建開放手機聯(lián)盟開發(fā)改良墨林,逐漸擴展到平板電腦及其他領域上赁酝。2011年第一季度,Android在全球的市場份額首次超過塞班系統(tǒng)旭等,躍居全球第一酌呆。2012年11月數(shù)據(jù)顯示,Android占據(jù)全球智能手機操作系統(tǒng)市場76%的份額搔耕,中國市場占有率為90%隙袁。
三、Linux系統(tǒng)的介紹
Linux是基于Unix的開源免費的操作系統(tǒng)弃榨,由于系統(tǒng)的穩(wěn)定性和安全性幾乎成為程序代碼運行的最佳系統(tǒng)環(huán)境菩收。Linux是由Linus Torvalds(林納斯·托瓦茲)起初開發(fā)的,由于源代碼的開放性鲸睛,現(xiàn)在已經(jīng)衍生出了千上百種不同的Linux系統(tǒng)娜饵。
Linux系統(tǒng)的應用非常廣泛,不僅可以長時間的運行我們編寫的程序代碼官辈,還可以安裝在各種計算機硬件設備中划咐,比如手機、平板電腦钧萍、路由器等褐缠。尤其在這里提及一下,我們熟知是Android程序最底層就是運行在linux系統(tǒng)上的风瘦。
2.Linux分類
Linux根據(jù)市場需求不同队魏,基本分為兩個方向:
1)圖形化界面版:注重用戶體驗,類似window操作系統(tǒng)万搔,但目前成熟度不夠
2)服務器版:沒有好看的界面胡桨,是以在控制臺窗口中輸入命令操作系統(tǒng)的,類似于DOS瞬雹,是我們架設服務器的最佳選擇昧谊。
Linux根據(jù)原生程度,又分為兩種:
1)內(nèi)核版本:在Linus領導下的內(nèi)核小組開發(fā)維護的系統(tǒng)內(nèi)核的版本號
2)發(fā)行版本:一些組織或公司在內(nèi)核版基礎上進行二次開發(fā)而重新發(fā)行的版本
Linux發(fā)行版本不同酗捌,又可以分為n多種:
紅旗呢诬、麒麟涌哲、cent os 7、ubuntn
3.Linux安裝
1.點擊Vware-workstation-full
2.安裝
3.下一步
4.修改安裝路徑
5.激活:https://links.jianshu.com/go?to=https%3A%2F%2Fwww.cnblogs.com%2Fzero-vic%2Fp%2F11584437.html
2.VMWare安裝Linux( CentOS)
新建虛擬機
image.png
選擇自定義配置
image.png
注意:就這里可以選擇自定義和典型尚镰,如果選擇典型就不用下邊配置了阀圾。
選擇Workstation 14.x,點擊”下一步”
image.png
選擇安裝程序光盤的鏡像文件iso(選擇鏡像文件路徑)狗唉,點擊”下一步”
1.png
設置全名,用戶名,密碼(用戶名和密碼要記住初烘,登錄的時候會用,我這邊全設置為jack)
3.png
點擊”下一步”分俯,選擇安裝路徑肾筐,點擊”下一步”
image.png
指定磁盤大小。我個人是指定100G缸剪。就像我們的windows系統(tǒng)中的磁盤作用一樣局齿。點擊“下一步”。
image.png
確認虛擬機的信息橄登,點擊“完成”
image.png
進入正式安裝界面
image.png
選擇推薦的即可
image.png
選擇創(chuàng)建新虛擬磁盤
image.png
選擇默認的即可
image.png
這個是虛擬機在winodow中的名稱,不需要修改
image.png
點擊”完成”
image.png
打開虛擬機讥此,第一次需要加載一定時間
image.png
進入登錄界面拢锹,輸入用戶名和密碼
二、服務器版的Linux安裝完畢了萄喳,但沒有圖形化界面卒稳,我們只能通過控制臺去操作系統(tǒng),我們就要使用類似DOS命令的Linux命令去操作系統(tǒng)他巨,那么下面我們就進行Linux的命令的學習充坑。Linux命令成百上千,課程不能一一涉及染突,也沒有必要一一涉及捻爷,根據(jù)我們程序員在日常工作中的需求,總結(jié)出如下幾種供學習
1.目錄切換命令
window中通過圖形化界面和鼠標可以任意切換需要進入的目錄份企,但Linux必須通過cd命令切換目錄也榄。但在學習cd命令之前,我們有必要分清Linux的目錄結(jié)構(gòu)
cd usr/ 切換到該目錄下usr目錄
cd ../ 切換到上一層目錄
cd /切換到系統(tǒng)根目錄
cd ~ 切換到用戶主目錄
2.目錄操作命令
1.增加目錄
命令:mkdir 目錄名稱
示例:在根目錄 / 下 mkdir test司志,就會在根目錄 / 下產(chǎn)生一個test問目錄
2.查看目錄
命令:ls [-al] 父目錄
示例:在根目錄 / 下使用ls甜紫,可以看到該目錄下的所有的目錄和文件
3.尋找目錄
移動目錄位置(剪切)
前提:必須切換到跟目錄,否則沒有權限
命令:mv 目錄名稱 目錄的新位置
示例:在test下將newTest目錄剪切到 /usr下面骂远,使用mv newTest usr/
image-20201117200655557.png
注意:
mv語法不僅可以對目錄進行剪切操作囚霸,對文件和壓縮包等都可執(zhí)行剪切操作
文件顯示為黑色,文件夾顯示為藍色激才,剪切的時候必須是在新位置后加/
15.2.6 拷貝目錄
命令:cp -r 被目錄名稱 目錄拷貝的目標位置 -----r代表遞歸拷貝
1. 被復制目錄和目標目錄需要寫全路徑拓型,否則按照根目錄處理2. 可以在任意位置復制
示例:將/usr下的newTest拷貝到根目錄下的test中额嘿,使用cp -r /usr/newTest test/rm
image-20201117200715468.png
注意:cp命令不僅可以拷貝目錄還可以拷貝文件,壓縮包等吨述,拷貝文件和壓縮包時不用寫-r遞歸
15.2.7 刪除目錄
(7)刪除目錄(刪)
命令:rm [-rf] 目錄
示例:刪除/usr下的newTest岩睁,進入/usr下使用rm -r newTest
image-20201117200731190.png
示例:刪除/test下的newTest而不需要詢問強制刪除,在/test下使用rm -rf newTest
image-20201117200745859.png
注意:rm不僅可以刪除目錄揣云,也可以刪除其他文件或壓縮包捕儒,為了增強大家的記憶,無論刪除任何目錄或文件邓夕,都直接使用rm -rf 目錄/文件/壓縮包
15.3 文件操作命令
15.3.1 文件創(chuàng)建
命令:touch 文件名稱 ----- 空文件
示例:在test目錄下創(chuàng)建一個空文件 touch aaa.txt
image-20201117200801504.png
15.3.2 文件查看
命令:cat/more/less/tail 文件
示例:使用cat查看/etc/profile文件刘莹,只能顯示最后一屏內(nèi)容
示例:使用more查看/etc/profile文件,可以顯示百分比焚刚,回車可以向下一行点弯, 空格可以向下一頁,q可以退出查看
示例:使用less查看/etc/profile文件矿咕,可以使用鍵盤上的PgUp和PgDn向上 和向下翻頁抢肛,q結(jié)束查看
示例:使用tail -10 查看/etc/profile文件的后10行,Ctrl+C結(jié)束
注意:命令 tail -f 文件 可以對某個文件進行動態(tài)監(jiān)控碳柱,例如tomcat的日志文件捡絮, 會隨著程序的運行,日志會變化莲镣,可以使用tail -f catalina-2016-11-11.log 監(jiān)控 文 件的變化
補充:公司的日志的格式
15.3.3 修改文件內(nèi)容
三種模式:命令模式福稳,編輯模式,底行模式
命令:vim 文件
示例:編輯/test下的aaa.txt文件瑞侮,使用vim aaa.txt
image.png
但此時并不能編輯的圆,因為此時處于命令模式,點擊鍵盤i/a/o進入編輯模式半火,可以? 編輯文件
image.png
編輯完成后越妈,按下Esc,退回命令模式
此時文件雖然已經(jīng)編輯完成钮糖,但是沒有保存叮称,需輸入冒號:進入底行模式,在底行模? 式下輸入wq代表寫入內(nèi)容并退出藐鹤,即保存瓤檐;輸入q!代表強制退出不保存。
image.png
總結(jié):
vim編輯器是Linux中的強大組件娱节,是vi編輯器的加強版挠蛉,vim編輯器的命令和快捷方式有很多,但此處不一一闡述肄满,大家也無需研究的很透徹谴古,使用vim編輯修改文件的方式基本會使用就可以了质涛。附:《vi使用方法介紹》和《vim命令合集》
關于vim使用過程:
在實際開發(fā)中,使用vim編輯器主要作用就是修改配置文件
vim 文件------>進入文件----->命令模式------>按i進入編輯模式----->編輯文件? ------->按Esc進入底行模式----->輸入:wq/q!
15.3.4 刪除文件
同目錄刪除:熟記 rm -rf 文件 即可
15.4 壓縮文件操作命令
15.4.1 打包并壓縮文件
打包是指將一大堆文件或目錄什么的變成一個總的文件掰担,壓縮則是將一個大的文件通過一些壓縮算法變成一個小文件汇陆。
Linux中的打包文件一般是以.tar結(jié)尾的,壓縮的命令一般是以.gz結(jié)尾的带饱。
而一般情況下打包和壓縮是一起進行的毡代,打包并壓縮后的文件的后綴名一般.tar.gz。
命令:tar -zcvf 打包壓縮后的文件名 要打包壓縮的文件
其中:
z:調(diào)用gzip壓縮命令進行壓縮c:打包文件v:顯示運行過程f:指定文件名
示例:打包并壓縮/test下的所有文件 壓縮后的壓縮包指定名稱為xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
或:tar -zcvf xxx.tar.gz /test/*
image.png
15.4.2 解壓壓縮包(重點)
命令:tar [-xvf] 壓縮文件
其中:x:代表解壓
示例:將/test下的xxx.tar.gz解壓到當前目錄下:tar -xvf xxx.tar.gz
image.png
示例:將/test下的xxx.tar.gz解壓到根目錄/usr下
tar -xvf xxx.tar.gz -C /usr------C代表指定解壓的位置
image.png
15.5 其他命令
15.5.1 顯示當前所在位置
命令:pwd
image.png
15.5.2 搜索命令
命令:grep 要搜索的字符串 要搜索的文件
示例:搜索/usr/sudu.conf文件中包含字符串to的行
image.png
示例:搜索/usr/sudu.conf文件中包含字符串to的行 to要高亮顯示
15.5.3 管道命令
命令:|? 將前一個命令的輸出作為本次目錄的輸入
示例:查看當前系統(tǒng)中所有的進程中包括system字符串的進程ps -ef |grep system
image.png
15.5.4 查看進程
命令:ps -ef
示例:查看當前系統(tǒng)中運行的進程
image.png
15.5.5 殺死進程
命令:kill -Signal 進程的pid
Signal:發(fā)送給進程的信號
15:默認信號勺疼,你需要被關閉教寂,請自行停止運行并退出。
9:“無條件終止”执庐,強制關閉
網(wǎng)絡通信命令
查看當前系統(tǒng)的網(wǎng)卡信息:ifconfig
image.png
查看與某臺機器的連接情況:ping
image.png
15.5.7 查看當前系統(tǒng)的端口使用
netstat –an,通常和 | grep一起使用
image.png
也可以單獨使用
15.6 Linux的權限命令
15.6.1 Linux的權限命令
權限是Linux中的重要概念酪耕,每個文件/目錄等都具有權限,通過ls -l命令我們可以 查看某個目錄下的文件或目錄的權限
示例:在隨意某個目錄下ls -l
image.png
第一列的內(nèi)容的信息解釋如下:
權限.png
這個字符串有10位轨淌,可以分為4段來解讀迂烁。
第一段(第1位)表示是目錄還是文件,-表示是文件递鹉,d表示是目錄盟步;
第二段(第2-4位,共3個字符串)表示文件所屬用戶對它的權限 - 屬主權限(User)梳虽;
第三段(第5-7位,共3個字符串)表示文件所屬用戶組用戶對它的權限 - 屬組權限(Group)灾茁;
第四段(第8-10位窜觉,共3個字符串)表示其他用戶對它的權限 - 其他權限(other);
注:
①我們用3位8進制來表示文件的權限北专,r(read)用4標識禀挫,w(write)用2標識,x(excute)用1標識
②r–可讀拓颓,w–可寫语婴,x–可執(zhí)行。
③每一段的三位順序不可變驶睦,如果沒有對應的權限砰左,則使用-表示
上圖中的-rwxrw-r–可以用八進制數(shù)字764表示。
案例:
-rwxrwxrwx
轉(zhuǎn)算成八進制场航,777缠导,代表這是一個對所有人開發(fā)權限的文件。
15.6.2 修改文件/目錄的權限的命令:chmod
示例:修改/test下的aaa.txt的權限為屬主有全部權限溉痢,屬主所在的組有讀寫權限僻造,
其他用戶只有讀的權限
chmod u=rwx,g=rw,o=r aaa.txt
image-20201117201923200.png
上述示例還可以使用數(shù)字表示:
chmod 764 aaa.txt
15.7 free查看內(nèi)存信息
15.7.1 free查看內(nèi)存信息
free指令會顯示內(nèi)存的使用情況憋他,包括實體內(nèi)存,虛擬的交換文件內(nèi)存髓削,共享內(nèi)存區(qū)段竹挡,以及系統(tǒng)核心使用的緩沖區(qū)等
image.png
df? df -h 命令用于顯示目前在 Linux 系統(tǒng)上的文件系統(tǒng)磁盤使用情況統(tǒng)計
image.png
15.8 top查看資源信息(CPU)
15.8.1 top查看資源信息(CPU)
image.png
補充:
關機命令
reboot? 重新啟動操作系統(tǒng)
shutdown -h now 立刻關機,其中now相當于時間為0的狀態(tài)
shutdown -h 10:23
shutdown -h +10? 系統(tǒng)再過十分鐘后自動關機