個人主頁-愛因斯晨
文章專欄-Linux
最近學習人工智能時遇到一個好用的網站分享給大家:
人工智能學習
文章目錄
- 個人主頁-愛因斯晨
- 文章專欄-Linux
- 一、前言
- 1.為什么學習Linux
- 2.操作系統概述:
- 3.常見的操作系統:
- 二、初識Linux
- 1.誕生
- 2.什么是Linux內核
- 3.常見的發行版(熱門:centos,ubuntu)
- 三、基礎命令
- 1.目錄結構
- 2. Linux命令入門
- 2.1 Linux命令基礎
- 2.2 基礎格式
- 2.3 開關機
- 2.4 目錄操作
一、前言
1.為什么學習Linux
如果把操作系統分為兩類:
個人桌面操作系統:windows,macos
服務器操作系統:Linux(開發人員必學)
2.操作系統概述:
計算機軟件的一種,作為用戶和計算機硬件的橋梁,調度和管理計算機硬件進行工作。
3.常見的操作系統:
windows,Linux,macos,安卓,ios,HarmonyOS
二、初識Linux
1.誕生
2.什么是Linux內核
組成:Linux系統內核+系統級應用程序
系統內核:調用CPU,調度內存…
系統級應用程序:可以理解為出廠自帶的程序,可供用戶快速上手操作
內核是最核心的存在,其也是開源的,任何人都可以下載源碼查看并修改
3.常見的發行版(熱門:centos,ubuntu)
內核是免費開源的,這就代表任何人都可以獲得并修改內核,并自行集成系統級程序,提供了內核和系統級程序的完整封裝,稱為Linux發行版。
不同的發行版,Linux的基礎命令是相同的,只是部分的操作不同
三、基礎命令
1.目錄結構
目錄結構是一個樹形結構,在Windows系統可以擁有盤符,如C盤。Linux沒有盤符這個概念,只有一個根目錄/,所有文件都在它下面。
路徑描述方式:
Windows系統中,路徑之間的層級關系,使用“\”
Linux系統中,使用“/’’
2. Linux命令入門
2.1 Linux命令基礎
什么是命令
一個命令就是一個程序。命令沒有圖形化頁面,可以在命令行提供字符畫的反饋。
什么是命令行
就是終端
,使用字符化命令對系統發出操作指令
2.2 基礎格式
通用格式:command [-options] [-parameter]
command
:命令本身
[-options]
:命令的選項,控制命令的行為細節
[-parameter]
:命令的參數,控制命令的指向目標
語法中,[]
表示可選的意思。
例如:
2.3 開關機
注意:Linux中沒有輸出,就是成功
shutdown 關機
sync 將數據同步到硬盤中
shutdown -h 10 十分鐘后關機
shutdown -h now 現在關機
shutdown -h 0:25 這個時間關機
shutdown -r now 系統立馬重啟
shutdown -r +10 十分鐘后重啟
reboot 重啟
halt 關閉系統
2.4 目錄操作
ls
命令
作用是列出目錄下的內容,語法細節如下:
ls [-a -l -h ] [Linux路徑]
-a -l -h
:是可選的選項
Linux
:路徑是此命令的可選參數
只使用ls
就是以平鋪的方式列出當前目錄下的內容
cd /
ls
ls / 一切目錄下的文件,/是根目錄
樹狀目錄結構:
以下是對這些目錄的解釋:
-
/bin:bin 是 Binary 的縮寫,這個目錄存放著最經常使用的命令。(不要刪除!!)
-
/boot:這里存放的是啟動 Linux 時使用的一些核心文件,包括一些連接文件以及鏡像文件。
-
/dev:dev 是 Device (設備) 的縮寫,存放的是 Linux 的外部設備,在 linux 中訪問設備的方式和訪問文件的方式是相同的。
-
/etc:這個目錄用來存放所有的系統管理所需要的配置文件和子目錄。
-
/home:用戶的主目錄,在 Linux 中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。
-
-
/lib:這個目錄里存放著系統最基本的動態連接共享庫,其作用類似于 Windows 里的 DLL 文件。
-
/lost+found:這個目錄一般情況下是空的,當系統非法關機后,這里就存放了一些文件。
-
/media:linux 系統會自動識別一些設備,例如 U 盤、光驅等等,當識別后,linux 會把識別的設備掛載到這個目錄下。
-
/mnt:系統提供該目錄是為了讓用戶臨時掛載別的文件系統的,我們可以將光驅掛載在 /mnt/ 上,然后進入該目錄就可以查看光驅里的內容了。
-
/opt:這是給主機額外安裝軟件所擺放的目錄。比如你安裝一個 ORACLE 數據庫則就可以放到這個目錄下。默認是空的。
-
/proc:這個目錄是一個虛擬的目錄,它是系統內存的映射,我們可以通過直接訪問這個目錄來獲取系統信息。
-
/root:該目錄為系統管理員,也稱作超級權限者的用戶主目錄。
-
/sbin:s 就是 Super User 的意思,這里存放的是系統管理員使用的系統管理程序。
-
/srv:該目錄存放一些服務啟動之后需要提取的數據。
-
/sys:這是 linux2.6 內核的一個很大的變化。該目錄下安裝了 2.6 內核中出現的一個文件系統 sysfs。
-
/tmp:這個目錄是用來存放一些臨時文件的。用完就丟的文件
-
/usr:這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似于 windows 下的 program files 目錄。
-
/usr/bin:系統用戶使用的應用程序。
-
/www : 存放服務器網站相關的資源,環境,網站的項目
這里可以看到,兩邊的文件,可以直接拖拽。
基本參數:
-a參數
:all ,查看全部的文件,包括隱藏文件
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg tee
root@VM-24-17-ubuntu:~# ls -a
. .bash_history .pydistutils.cfg
.. .bashrc .ssh
0665f1354725765580a9f5fa1dca3178.pdf .cache tee
1eada41a4fd1d0278ef5dc7bfceea6d.jpg .pip .Xauthority
1fef20ff65d7f03923621f8494e5877c.pdf .profile
-l參數
:列出所有文件,包含文件的屬性和權限,沒有隱藏文件
root@VM-24-17-ubuntu:~# ls -l
total 836
-rw-r--r-- 1 root root 47262 Aug 27 23:10 0665f1354725765580a9f5fa1dca3178.pdf
-rw-r--r-- 1 root root 747800 Aug 27 23:10 1eada41a4fd1d0278ef5dc7bfceea6d.jpg
-rw-r--r-- 1 root root 52999 Aug 27 23:10 1fef20ff65d7f03923621f8494e5877c.pdf
drwxr-xr-x 3 root root 4096 Aug 28 10:44 tee
root@VM-24-17-ubuntu:~#
命令可以組合使用
root@VM-24-17-ubuntu:~# ls -al
total 876
drwx------ 6 root root 4096 Aug 28 10:45 .
drwxr-xr-x 24 root root 4096 Aug 28 10:49 ..
-rw-r--r-- 1 root root 47262 Aug 27 23:10 0665f1354725765580a9f5fa1dca3178.pdf
-rw-r--r-- 1 root root 747800 Aug 27 23:10 1eada41a4fd1d0278ef5dc7bfceea6d.jpg
-rw-r--r-- 1 root root 52999 Aug 27 23:10 1fef20ff65d7f03923621f8494e5877c.pdf
-rw------- 1 root root 596 Aug 28 10:48 .bash_history
-rw-r--r-- 1 root root 3106 Apr 22 2024 .bashrc
drwxr-xr-x 3 root root 4096 Dec 17 2024 .cache
drwxr-xr-x 2 root root 4096 Apr 28 2024 .pip
-rw-r--r-- 1 root root 161 Apr 22 2024 .profile
-rw-r--r-- 1 root root 73 Aug 27 22:03 .pydistutils.cfg
drwx------ 2 root root 4096 Apr 26 2024 .ssh
drwxr-xr-x 3 root root 4096 Aug 28 10:44 tee
-rw------- 1 root root 122 Aug 28 10:32 .Xauthority
root@VM-24-17-ubuntu:~#
cd
命令,切換目錄
cd 目錄名 (絕對路徑/開頭,相對路徑,堆友當前目錄該如何尋找…/…)
cd ~
是返回,根目錄
pwd
顯示當前用戶所在的目錄
root@VM-24-17-ubuntu:~# cd ~
root@VM-24-17-ubuntu:~# cd /root
root@VM-24-17-ubuntu:~# pwd //顯示當前目錄
/root
root@VM-24-17-ubuntu:~#
mkdir
創建一個目錄
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg tee
root@VM-24-17-ubuntu:~# mkdir chen //創建chen
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf tee
1eada41a4fd1d0278ef5dc7bfceea6d.jpg chen
root@VM-24-17-ubuntu:~#
藍色的是文件夾
刪除目錄
rmdir
文件名
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf tee
1eada41a4fd1d0278ef5dc7bfceea6d.jpg chen
root@VM-24-17-ubuntu:~# rmdir chen //刪除chen
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg tee
root@VM-24-17-ubuntu:~#
刪除層級目錄:rmdir -p test2/test3
rmdir僅能刪除空的目錄,如果下面存在文件,應該先刪除文件,遞歸刪除多個目錄,要加-p
cp
復制文件或者目錄
如果文件重復就選擇覆蓋
rm
(移除文件或者目錄)
-f 忽略不存在的文件,不會出現警告,強制刪除
-r 遞歸刪除目錄!
-i 互動,刪除詢問是否刪除
rm -rf / 系統中所有文件刪除,刪庫跑路
root@VM-24-17-ubuntu:/# cd /home
root@VM-24-17-ubuntu:/home# ls
lighthouse tt ubuntu
root@VM-24-17-ubuntu:/home# rm -f tt
rm: cannot remove 'tt': Is a directory
root@VM-24-17-ubuntu:/home# ^C
root@VM-24-17-ubuntu:/home# rm -r tt
root@VM-24-17-ubuntu:/home# ls
lighthouse ubuntu
mv
移動文件或者目錄,重命名文件
-f :強制
-u : 只替換以及更新過的文件
root@VM-24-17-ubuntu:/home# cd ~
root@VM-24-17-ubuntu:~# cd /root
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf test1
1eada41a4fd1d0278ef5dc7bfceea6d.jpg te
root@VM-24-17-ubuntu:~# mv test1 te/ //移動文件
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg te
root@VM-24-17-ubuntu:~# cd /test1
-bash: cd: /test1: No such file or directory
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg te
root@VM-24-17-ubuntu:~#
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg te
root@VM-24-17-ubuntu:~# mv te tee //重命名文件
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf 1fef20ff65d7f03923621f8494e5877c.pdf
1eada41a4fd1d0278ef5dc7bfceea6d.jpg tee
root@VM-24-17-ubuntu:~#