linux:Ubuntu入门基础
Linux是多用戶操作(針對多用戶設計),所以每個用戶都是在home目錄下。在各自的用戶目錄下根據需要建立文件夾存放文件。
home文件夾是所有用戶的家目錄。
PS:linux里邊是區分大小寫的
ctrl+a:把光標移動到這一行的行首
ctrl+e:把光標移動到這一行的行尾
ctrl+f:
ctrl+b:
ctrl+p:向上查看命令
ctrl+n:向下
ctrl+h:刪除光標前邊的字符
ctrl+a:刪除光標后邊的字符(左前右后)
ctrl+u:刪除光標前邊的一部分
ctrl+l:是清屏(或者是clear)
ctrl+d:是刪除光標后邊的字符,是光標覆蓋的字符
ctrl+h:是刪除光標前邊的字符(或者backspace)
tab:是自動補齊
linx是根據命令解釋器來實現的;命令解釋器的本質是我們輸入一些命令,命令解釋器就會調用對應的可執行程序。
/bin目錄:該目錄即在bin目錄下其實我們常使用的命令可執行程序都在bin目錄下,你敲了一個命令之后,命令解釋器就會來bin目錄下找(為什么來bin目錄下找呢?因為它自動的配置了環境變量)
/boot文件:該目錄里邊放的是一些開機啟動項。boot文件不能刪,刪了之后你就開機啟動不了了。
/dev:該目錄是decive設備的一個縮寫,存的是一些設備文件(因為在linux下邊所有的東西一切皆文件。在linux操作系統下邊一些硬件的外設比如說鼠標鍵盤硬盤還有一些顯卡聲卡,這些都是一些硬件,這些硬件在linux下邊是怎么表示的呢?他會把這些硬件的設備抽象為一個文件,存到設備目錄里邊,因為每一個設備又都對應一個設備文件,這就是dev目錄存在的原因,他把所有的外設都抽象為一個文件)
/etc:該目錄主要保存的是我們操作系統或者是你安裝的一些軟件,他們所需要用到的一些配置文件,主要是配置文件。
/home:該目錄是用戶的主目錄,在linux中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。查看一下home里邊的東西,首先要進入到home,cd /home,然后ls,可以看到home目錄下邊的文件,其實這些文件都是我們linux下邊的用戶。也就是我當前裝的linux操作系統里邊一共有多少的用戶呢,這些都是普通用戶,里邊沒有root用戶 ;有人說家目錄里邊給我們存放的就是我們所有用戶的主目錄,每一個用戶他都有自己的主目錄,home是所有用戶的一個目錄,你要看我當前linux操作系統下一共有多少個用戶,你就可以來這看,有多少個主目錄,你就有多少個用戶。
/lib:該目錄其(其實就是library的意思)它里邊存放的都是我們linux操作系統下邊需要用到的一些動態鏈接庫(在linux操作系統下邊動態庫也稱作為共享庫),起作用類似于windows里邊的DLL文件,幾乎所有的應用程序都需要用到這些共享庫。
lost+found:該目錄對我們用戶來說幾乎是沒什么用,你也不能夠對他進行操作,它里邊存的都是一些零碎片(什么是零碎片呢,比如說你操作系統用著用著突然之間關機了,或者斷電了,突然關機是系統異常,突然斷電肯定是外部導致的系統異常,有可能你這個系統某些配置文件就會損壞,損壞之后你就開不了機,如果你想恢復呢,這些文件的碎片就會存到lost+found里邊就可以從這個里邊把這些文件碎片找到之后做一個恢復)。
/media:linux系統會自動識別一些設備,例如U盤光驅等等,當識別之后,linux會把識別的設備掛載到這個目錄下。(其實不管是media目錄還是下邊的mnt目錄,他們都是用來掛載外設的,比如說掛載光驅,掛載U盤,那么你掛載進來之后,在media目錄里邊你看到的就是你U盤中的內容,或者mnt中看到的就是你U盤中的內容,他們兩個有什么區別呢?當我們插上U盤之后,如果系統能夠自動的把我們U盤或者光驅做一個掛載,這是他自動掛載的時候,他就會掛載到media目錄下邊,你要用什么東西你就去media目錄下邊找,找U盤里邊的內容或者光盤里邊的內容;如果他沒有掛載上,你就需要自動的去掛載,你手動掛載的時候呢,我們就不往media目錄里邊去掛了,我們往mnt目錄里邊去掛載;所以說這是兩者的區別,一般呢mnt里邊是沒有什么東西的,如果有你看到了一些目錄,這些目錄他也是一些空目錄,只有我們將U盤或者光盤掛載到mnt上邊之后,再進去才能夠看到內容,這個內容就是我們U盤中的內容。)
/mnt:系統提供該目錄是為了讓用戶臨時掛載別的文件系統的,我們可以將光驅掛載在/mnt上,然后進入該目錄就可以查看光驅里邊的內容了。
/opt:該目錄這是給主機額外安裝軟件所擺放的目錄,比如你安裝一個ORACLE數據庫則就可以放到這個目錄下,默認是空的。
/proc:這個目錄是一個虛擬的目錄,他是系統內存的映射,我們可以通過直接訪問這個目錄,來獲取系統信息,這個目錄的內容不在硬盤上,而是在內存里,我們也可以直接修改里邊的某些文件,比如可以通過下面的命令來屏蔽主機的ping命令,使別人無法ping你的機器。
/root:該目錄為系統管理員,也稱作超級權限者的用戶主目錄。
/sbin:s就是super user的意思,這里存放的是系統管理員使用的系統管理程序。(對于我們普通用戶來說是用不到sbin里邊的東西的)
/selinux:該目錄是Redhat/CentOS所特有的目錄,selinux是一個安全機制,類似于windows的防火墻,但是這套機制比較復雜,這個目錄就是存放selinux相關的文件的。
/srv:該目錄存放一些服務啟動之后需要提取的數據。
/sys:這是linux2.6內核的一個很大的變化,該目錄下安裝了2.6內核中新出現的一個文件系統sysfs。
sysfs文件系統集成了下面3種文件系統的信息:針對進程信息的proc文件系統,針對設備的deyfs文件以及針對偽終端的deypts文件系統。
該文件系統是內核設備樹的一個直觀反應。
當一個內核對象被創建的時候,對應的文件和目錄也在內核對象子系統中被創建。
/tmp:這個目錄是用來存放一些臨時文件的。
/usr:(用戶軟件資源目錄)他是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似于windows下的program files目錄。
/usr/bin:系統用戶使用的應用程序。
/usr/sbin:超級用戶使用的比較高級的管理程序和系統守護程序。
/usr/src:內核源代碼默認的放置目錄。
/var:這個目錄中存放著在不斷擴充著的東西,我們習慣將那些經常被修改的目錄放在這個目錄下,包括各種日志文件。
在linux系統中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部文件。
/etc:上邊也提到了,這個是系統中的配置文件,如果你更改了該目錄下的某個文件,可能會導致系統不能自動。
/bin、/sbin、/usr/bin、/usr/sbin這是系統預設的執行文件的放置目錄,比如ls就是在/bin/ls目錄下的。
值得提出的是/bin、/usr/bin是給系統用戶使用的指令(除root外的普通用戶);而/sbin、/usr/sbin則是給root使用的指令。
/var這是一個非常重要的目錄,系統上跑了很多個程序,那每個程序都會有相應的日志產生,而這些日志就被記錄到這個目錄下,具體在/var/log目錄下,另外mail的預設放置也是在這里。
Linux下的目錄:
絕對目錄:linux下的絕對目錄從根目錄開始寫。比如/home/itcase/a
相對目錄:相對路徑就是相對于你當前的。相對于當前的工作目錄而言。
在相對目錄中,有兩個東西,分別是點.和點點..,在linux中點.表示當前目錄。點點..就表示當前的上一級目錄。還有一個是杠-,cd -表示在臨近的兩個目錄之間切換。
字符串解讀:
每次在輸入命令的時候,前邊都會有一串字符串:
比如:itcast@ubuntu:~$
第一:itcast表示當前登錄用戶。
第二:@就是at在的意思
第三:ubuntu是主機名
第四:~表示當前用戶的家目錄(宿主目錄)(某一個用戶的宿主目錄是/home下的一個目錄,比如說我zhangsan的宿主目錄是誰呢?不是/home,而是/home/zhangsan)(如果你要是想進入到當前用戶的家目錄,可以cd /home/zhangsan這樣是可以的因為你知道當前用戶的名字,一般他的家目錄和用戶名是一樣的;或者說cd ~還可以直接cd就行;使用pwd查看當前用戶目錄;)
第五:$表示當前用戶為普通用戶。(如果是#表示的是當前用戶是超級用戶,也就是我們所說的root用戶;--root)
在ubuntu下切換到超級用戶可以這樣做:
sudo su
輸入上述命令之后會讓你輸入密碼,此處要注意,要求的輸入密碼是psaaword for itcast而,iecast是當前用戶名,所以你要看清粗提示他讓你輸入的是誰的密碼(此處讓我們輸入的是普通用戶itcast的用戶密碼)。
之后查看是不是由$符號變成了#我們就知道是不是進入了超級用戶。如果想從超級用戶下退出直接exit即可。
看時間的命令:date
看敲入歷史的命令:history
在輸入命令時,忘記命令的拼寫可以嗯一下或者兩下tab鍵,會有提示。(也可以用作路徑目錄提示)
cd進入文件夾的命令。
Linux下邊的目錄結構:(與windows下邊是不同的,在windows下邊是有磁盤的,區分CDEF盤;但是在linux系統下就沒有這些盤的概念了,他們的結構都是樹結構)
最上邊是一些根目錄,根目錄下邊是一些子目錄。子目錄下邊還有子目錄。
創建目錄:mkdir 目錄名
創建多個目錄:mkdir 目錄名/子目錄/子子目錄 -p
刪除空目錄:rmdir 目錄名
刪除非空目錄:rm 目錄名 -r
帶提示的刪除:rm -ri 目錄名
創建文件:touch 文件名.后綴名(功能:如果文件不存在創建文件,如果文件存在,修改文件的時間)
查看文件:cat 文件名
查看文件的時間:ls -l 文件名
刪除文件:rm 文件名 -i
查看文件里邊的內容(有5種方式):第一種:cat 文件名
第二種:more 文件名(在查看時可以嗯回車鍵做翻動查看。之后摁一下q鍵就退出了;或者摁一下ctrl+c組合鍵也可以從more命令中退出)
第三種:less 文件名(ctrl+p向前查看,ctrl+n向后查看)
cp命令既能夠拷貝文件又能夠拷貝目錄(只是內部內容的復制)
拷貝文件(復制文件,其實只是將文件1里邊的內容復制到文件2):cp 待復制的文件名1 新的文件名2(即要粘貼到的文件)(如果這個文件不存在會自動創建)
拷貝目錄(復制目錄):cp 要拷貝的目錄名/ 新的目錄名2(當新的目錄名不存在的時候就會創建一個目錄,把1里邊的內容放到這個新的目錄2下) -r(意思是遞歸的拷貝)
-----------------------
touch a/b/c/1.txt是在c目錄下創建文件1.txt(前提是a/b/c這幾個文件夾即目錄存在)
比如下邊:用戶是ysh
回復老師這個命令下這個是啥的問題?文件夾以藍色字體顯示,文件以白色字體顯示。
創建隱藏文件是:touch? ?.123.txt(這樣.123.txt這個文件就是隱藏的看不到的)(只要是.開頭的即點開頭的這個文件就是隱藏文件)
查看隱藏文件就是:ls? ?-a(在終端中查看隱藏文件需要在ls后邊增加選項-a)
命令ls? -lha會顯示所有文件包含隱藏文件(這個命令執行后結果會顯示出有很多的文件或者文件夾都是以.開頭的,就是隱藏文件夾或者文件,現在我們所在的目錄是家目錄/home/ysh,這些隱藏的文件和文件夾是這樣出現的?因為我們在Ubuntu中安裝有各種各樣的文件,這些隱藏文件夾和隱藏文件就是專門來配置我們系統上安裝的各個應用軟件的,所以在我們日常使用的時候不需要理會這些文件)
星號代表任意多個字符(包含0個),而問號只能代表一個字符。比如你在Desktop目錄下建立了很多個文件,你要定位找到你需要的1開頭的就可以ls? 1*這個命令。波浪號表示用戶的家目錄。.點表示當前工作目錄。
?
cp中的源文件是指是要復制的源文件,目標文件就是我們希望將源文件復制到哪里并且叫什么名字。
//cp并不能直接復制目錄,需要帶一個-r的選項。
cp ~/Documents/1.txt ./2.txt //現在我們要復制的源文件是用戶家目錄下的文檔目錄下的1.txt,我們要把這個文件復制到當前的目錄文件夾下,并重新命名叫2.txt(當前目錄所以是.)
//ps:如果文件不重新命名的話只需要指定要放置的路徑即可cp -i ~/Documents/1.txt ./2.txt //-i的意思就是如果目標路徑下已經存在了2.txt一樣名字的文件,會提示是否覆蓋掉 //此時輸入n或者y就行cp -r 源文件夾 目標文件夾//復制的是整個文件夾即目錄
grep搜索命令如果搜索的是一個字符串需要加雙引號引起來,因為一串字符串中間有空格,比如“hello python”
1、重定向命令:
echo命令在創建文件的同時就可以指定命令。echo hello >a//創建A文件,并將hello寫到a中。(>會覆蓋原有內容、>>追加在原有內容后邊)
2、管道? |:(要是用管道至少需要兩個命令)(guand)
ls? -lha? ~? |? more//將~家目錄下的包括隱藏文件列表顯示,同時通過管道命令把前邊命令的輸出結果通過管道傳遞給more進行分屏顯示(分屏顯示可以摁空格進行翻頁)
執行ping命令后可以使用ctrl+c終止。
3、進程:
如果電腦上安裝了一個QQ,但是這個QQ并沒有啟動運行,那他就不能說是進程。 (top命令的使用是直接輸入top回車即可,因為是動態的所以結束的話摁 q即可退出)
在終端中輸出了兩個命令的執行,CMD就表示命令,第一個命令bash,bash就是一個shell,是我們專門用來輸入終端命令的,而python用戶默認使用的shell就是bash。第二個命令是ps,剛剛我們執行的命令就是ps,ps命令可以統計當前正在執行的程序,而在執行統計過程中就會把自己順帶的也統計進來。(PID是進程的代號)
在linux中文件名和文件數據是分開保存的,比如在01.py這個文件中我們可以存儲python的源代碼,這些Python的源代碼是保存在磁盤的一個位置上的,怎么樣能夠訪問到python的源代碼呢?我們就可以通過保存在磁盤上的另外一個位置的文件名就可以訪問到這個文件中保存的內容了(這個就是在linux系統中文件和文件名分開存儲的概念,就是文件名存在一個位置,文件數據存在一個位置,但是可以通過文件名非常方便的訪問到文件中的數據)。軟連接的文件名保存著這個鏈接中源文件的完整路徑,通過這個路徑就可以訪問到連接中的文件數據。
硬鏈接就是文件的另外一個文件名,比如文件名是文件數據的大名,那么硬鏈接就是文件數據的小名,通過這個大名或者小明都可以訪問到存儲在這個磁盤上另外一個位置的文件數據。
打包文件就是最終要生成的tar包。此處的tar命令只負責打包解包,不負責壓縮(并不具有壓縮的功能)。
壓縮文件的流程:
- 先試用tar命令打個包;
- 在使用gzip對tar包進行壓縮。
suo可以讓我們以root身份來執行對系統維護和管理的工作。在linux中我們平時都是以標準用戶來使用的,而標準用戶通常都是在我們家目錄里邊的活動,但是我們想要執行一些系統維護、管理工作的時候就需要使用sudo,以root身份來執行。如果我們想安裝一個軟件或者卸載一個軟件,意味著當這個軟件安裝完成之后,系統中所有的用戶都應該能夠使用這個軟件,因此我們要安裝軟件也好或者卸載軟件也好,都需要在前面接上一個sudo。(要使用apt我們必須在前面使用sudo,以root身份來執行系統維護管理工作。)
4、配置軟件源
首先什么是軟件源?
答:比如說我們上一步使用了apt這個終端命令安裝了htop這個軟件(命令是sudo apt install htop),在整個的安裝過程中我們就是輸入命令告訴apt,我要安裝htop,然后apt就會自動查找這個軟件的安裝包,找到之后呢就開始下載安裝,對于用來說只是等待就幾分鐘他就自動安裝完成了,我們就可以使用這個軟件了,整個安裝過程比較簡單也沒看到。
但是這個軟件是如何安裝到我們自己的電腦上邊的呢?
答:Ubuntu提供的有一個主服務器,在這個主服務器上保存的有所有可以通過apt軟件安裝程序的安裝包,當我們使用apt來安裝一個軟件的時候,apt會首先默認在主服務器上查找有沒有我們要安裝軟件的安裝包,如果找到之后,apt就會先將這個安裝包下載到本地,下載完成之后再開始執行安裝的動作,安裝完成之后就告訴我們可以使用這個軟件了,這個就是使用apt來安裝軟件的過程。(Ubuntu提供的有主服務器,主服務器上有所有軟件的安裝包,那么我們就會把這個主服務器叫做軟件源,所謂軟件源就是提供所有軟件安裝包的源頭,就叫做軟件源)
鏡像源:
Ubuntu的服務器并不是保存在國內的,而是放在國外,如果我們通過國內的網絡去訪問國外的服務器,再來下載軟件這個速度就比較慢了,那么如何解決這些問題呢?國內就會有一些公司或者學校提供有Ubuntu主服務器的鏡像,什么是鏡像呢?所謂鏡像就是像照鏡子一樣一模一樣,在這些服務器上保存的內容是跟Ubuntu的主服務器保存的內容一模一樣,所以既然國外的服務器慢國內的服務器快,而且國內的服務器的內容跟國外服務器的內容一模一樣,那么我們在使用apt安裝軟件的時候,如果apt能在國內的鏡像服務器來查找軟件的安裝包,這樣下載過程就會快很多,這個就是鏡像源的用處,之所以要使用鏡像源就是為了讓我們能夠從服務器上更加快速的下載軟件。
在Ubuntu中如何設置鏡像源?
在Ubuntu中要想設置鏡像源可以通過圖形界面來操作,系統設置------>軟件和更新-------->(選擇下載自)選擇鏡像(點擊)------->(選擇其他站點other)---------->選擇鏡像(比如阿里云的Ubuntu鏡像)
這個測試工作就會把我們國內的服務器依次測試一下,找到速度最快的那個服務器,這個測試過程是要花費一些時間的,耐心等著就行了。
這個是測試完成后自動選了一個最快的,然后就點擊右下角的選擇服務器。
選擇之后會提示我們輸入當前用戶的密碼,輸入密碼點擊授權即可。
當我們更新了鏡像源之后,需要進行一個重新載入的動作,這個重新載入的動作時間會比較長,之后就耐心的等待吧,等待從新選擇的鏡像服務器上把所有軟件源的信息做一個更新,當整個軟件源更新完成之后,我們再以后下載的軟件就會統統的從這個鏡像服務器上下載,而且速度會非???。
可能會出現的結果。
總結
以上是生活随笔為你收集整理的linux:Ubuntu入门基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深蓝学院的深度学习理论与实践课程:第五章
- 下一篇: 随笔2:关于linux和python