Linux是一種操作系統(tǒng)?Operating System
?簡稱?OS
?,是軟件的一部分,它是硬件基礎(chǔ)上的第一層軟件,是硬件和其它軟件溝通的橋梁。
操作系統(tǒng)會控制其他程序運行,管理系統(tǒng)資源,提供最基本的計算功能,如管理及配置內(nèi)存、決定系統(tǒng)資源供需的優(yōu)先次序等,同時還提供一些基本的服務(wù)程序。
Linux 系統(tǒng)種類
- 紅帽企業(yè)版?
Linux
?:RHEL
?是全世界內(nèi)使用最廣泛的?Linux
?系統(tǒng)。它具有極強的性能與穩(wěn)定性,是眾多生成環(huán)境中使用的(收費的)系統(tǒng)。 -
Fedora
?:由紅帽公司發(fā)布的桌面版系統(tǒng)套件,用戶可以免費體驗到最新的技術(shù)或工具,這些技術(shù)或工具在成熟后會被加入到?RHEL
?系統(tǒng)中,因此?Fedora
?也成為?RHEL
?系統(tǒng)的試驗版本。 -
CentOS
?:通過把?RHEL
?系統(tǒng)重新編譯并發(fā)布給用戶免費使用的?Linux
?系統(tǒng),具有廣泛的使用人群。 -
Deepin
?:中國發(fā)行,對優(yōu)秀的開源成品進行集成和配置。 -
Debian
?:穩(wěn)定性、安全性強,提供了免費的基礎(chǔ)支持,在國外擁有很高的認可度和使用率。 -
Ubuntu
?:是一款派生自?Debian
?的操作系統(tǒng),對新款硬件具有極強的兼容能力。Ubuntu
?與?Fedora
?都是極其出色的?Linux
?桌面系統(tǒng),而且?Ubuntu
?也可用于服務(wù)器領(lǐng)域。
命令行提示符
進入命令行環(huán)境以后,用戶會看到?Shell
?的提示符。提示符往往是一串前綴,最后以一個美元符號?$
?結(jié)尾,用戶可以在這個符號后面輸入各種命令。
執(zhí)行一個簡單的命令?pwd
?:
[root@iZm5e8dsxce9ufaic7hi3uZ ~]# pwd
/root
命令解析:
-
root
:表示用戶名; -
iZm5e8dsxce9ufaic7hi3uZ
:表示主機名; -
~
:表示目前所在目錄為家目錄,其中?root
?用戶的家目錄是?/root
?普通用戶的家目錄在?/home
?下; -
#
:指示你所具有的權(quán)限(?root
?用戶為?#
?,普通用戶為?$
?)。 - 執(zhí)行?
whoami
?命令可以查看當(dāng)前用戶名; - 執(zhí)行?
hostname
?命令可以查看當(dāng)前主機名;
快捷方式
在開始學(xué)習(xí)?Linux
?命令之前,有這么一些快捷方式,是必須要提前掌握的,它將貫穿整個?Linux
?使用生涯。
- 通過上下方向鍵 ↑ ↓ 來調(diào)取過往執(zhí)行過的?
Linux
?命令; - 命令或參數(shù)僅需輸入前幾位就可以用?
Tab
?鍵補全; -
Ctrl + R
?:用于查找使用過的命令(history
?命令用于列出之前使用過的所有命令,然后輸入?!
?命令加上編號(?!2
?)就可以直接執(zhí)行該歷史命令); -
Ctrl + L
:清除屏幕并將當(dāng)前行移到頁面頂部; -
Ctrl + C
:中止當(dāng)前正在執(zhí)行的命令; -
Ctrl + U
:從光標位置剪切到行首; -
Ctrl + K
:從光標位置剪切到行尾; -
Ctrl + W
:剪切光標左側(cè)的一個單詞; -
Ctrl + Y
:粘貼?Ctrl + U | K | Y
?剪切的命令; -
Ctrl + A
:光標跳到命令行的開頭; -
Ctrl + E
:光標跳到命令行的結(jié)尾; -
Ctrl + D
:關(guān)閉?Shell
?會話;
文件和目錄
查看路徑
pwd
顯示當(dāng)前目錄的路徑
?
瀏覽和切換目錄
ls
列出文件和目錄,它是?Linux
?最常用的命令之一。
【常用參數(shù)】
-
-a
?顯示所有文件和目錄包括隱藏的 -
-l
?顯示詳細列表 -
-h
?適合人類閱讀的 -
-t
?按文件最近一次修改時間排序 -
-i
?顯示文件的?inode
?(?inode
?是文件內(nèi)容的標識)
cd
cd
?是英語?change directory
?的縮寫,表示切換目錄。
cd / --> 跳轉(zhuǎn)到根目錄
cd ~ --> 跳轉(zhuǎn)到家目錄
cd .. --> 跳轉(zhuǎn)到上級目錄
cd ./home --> 跳轉(zhuǎn)到當(dāng)前目錄的home目錄下
cd /home/lion --> 跳轉(zhuǎn)到根目錄下的home目錄下的lion目錄
cd --> 不添加任何參數(shù),也是回到家目錄
[注意] 輸入cd /ho
?+ 單次?tab
?鍵會自動補全路徑 + 兩次?tab
?鍵會列出所有可能的目錄列表。
瀏覽和創(chuàng)建文件
cat
一次性顯示文件所有內(nèi)容,更適合查看小的文件。
cat cloud-init.log
【常用參數(shù)】
-
-n
?顯示行號。
less
分頁顯示文件內(nèi)容,更適合查看大的文件。
less cloud-init.log
【快捷操作】
- 空格鍵:前進一頁(一個屏幕);
-
b
?鍵:后退一頁; - 回車鍵:前進一行;
-
y
?鍵:后退一行; - 上下鍵:回退或前進一行;
-
d
?鍵:前進半頁; -
u
?鍵:后退半頁; -
q
?鍵:停止讀取文件,中止?less
?命令; -
=
?鍵:顯示當(dāng)前頁面的內(nèi)容是文件中的第幾行到第幾行以及一些其它關(guān)于本頁內(nèi)容的詳細信息; -
h
?鍵:顯示幫助文檔; -
/
?鍵:進入搜索模式后,按?n
?鍵跳到一個符合項目,按?N
?鍵跳到上一個符合項目,同時也可以輸入正則表達式匹配。
head
顯示文件的開頭幾行(默認是10行)
head cloud-init.log
【參數(shù)】
-
-n
?指定行數(shù)?head cloud-init.log -n 2
tail
顯示文件的結(jié)尾幾行(默認是10行)
tail cloud-init.log
【參數(shù)】
-
-n
?指定行數(shù)?tail cloud-init.log -n 2
-
-f
?會每過1秒檢查下文件是否有更新內(nèi)容,也可以用?-s
?參數(shù)指定間隔時間?tail -f -s 4 xxx.log
touch
創(chuàng)建一個文件
touch new_file
mkdir
創(chuàng)建一個目錄
mkdir new_folder
【常用參數(shù)】
-
-p
?遞歸的創(chuàng)建目錄結(jié)構(gòu)?mkdir -p one/two/three
文件的復(fù)制和移動
cp
拷貝文件和目錄
cp file file_copy --> file 是目標文件,
file_copy 是拷貝出來的文件cp file one --> 把 file 文件拷貝到 one 目錄下,
并且文件名依然為 filecp file one/file_copy --> 把 file 文件拷貝到 one 目錄下,
文件名為file_copycp *.txt folder --> 把當(dāng)前目錄下所有 txt 文件拷貝到 folder 目錄下
【常用參數(shù)】
-
-r
?遞歸的拷貝,常用來拷貝一整個目錄
mv
移動(重命名)文件或目錄,與cp命令用法相似。
mv file one --> 將 file 文件移動到 one 目錄下mv new_folder one --> 將
new_folder 文件夾移動到one目錄下mv *.txt folder --> 把當(dāng)前目錄下所有
txt 文件移動到 folder 目錄下mv file new_file --> file 文件重命名為 new_file
文件的刪除和鏈接
rm
刪除文件和目錄,由于?Linux
?下沒有回收站,一旦刪除非常難恢復(fù),因此需要謹慎操作
rm new_file --> 刪除 new_file 文件rm f1 f2 f3 --> 同時刪除 f1 f2 f3 3個文件
【常用參數(shù)】
-
-i
?向用戶確認是否刪除; -
-f
?文件強制刪除; -
-r
?遞歸刪除文件夾,著名的刪除操作?rm -rf
?。
ln
英文?Link
?的縮寫,表示創(chuàng)建鏈接。
學(xué)習(xí)創(chuàng)建鏈接之前,首先要理解鏈接是什么,我們先來看看?Linux
?的文件是如何存儲的:
Linux
?文件的存儲方式分為3個部分,文件名、文件內(nèi)容以及權(quán)限,其中文件名的列表是存儲在硬盤的其它地方和文件內(nèi)容是分開存放的,每個文件名通過?inode
?標識綁定到文件內(nèi)容。
Linux 下有兩種鏈接類型:硬鏈接和軟鏈接。
硬鏈接
使鏈接的兩個文件共享同樣文件內(nèi)容,就是同樣的?inode
?,一旦文件1和文件2之間有了硬鏈接,那么修改任何一個文件,修改的都是同一塊內(nèi)容,它的缺點是,只能創(chuàng)建指向文件的硬鏈接,不能創(chuàng)建指向目錄的(其實也可以,但比較復(fù)雜)而軟鏈接都可以,因此軟鏈接使用更加廣泛。
ln file1 file2 --> 創(chuàng)建 file2 為 file1 的硬鏈接
如果我們用?rm file1
?來刪除?file1
?,對?file2
?沒有什么影響,對于硬鏈接來說,刪除任意一方的文件,共同指向的文件內(nèi)容并不會從硬盤上刪除。只有同時刪除了?file1
?與file2
?后,它們共同指向的文件內(nèi)容才會消失。
軟鏈接
軟鏈接就類似?windows
?下快捷方式。
ln -s file1 file2
執(zhí)行?ls -l
?命名查看當(dāng)前目錄下文件的具體信息
total 0-rw-r--r-- 1 root root 0 Jan 14 06:29 file1lrwxrwxrwx 1
root root 5 Jan 14 06:42 file2 -> file1 # 表示file2 指向 file1
其實?file2
?只是?file1
?的一個快捷方式,它指向的是?file1
?,所以顯示的是?file1
?的內(nèi)容,但其實?file2
?的?inode
?與?file1
?并不相同。如果我們刪除了?file2
?的話,?file1
是不會受影響的,但如果刪除?file1
?的話,?file2
?就會變成死鏈接,因為指向的文件不見了。
用戶與權(quán)限
用戶
Linux
?是一個多用戶的操作系統(tǒng)。在?Linux
?中,理論上來說,我們可以創(chuàng)建無數(shù)個用戶,但是這些用戶是被劃分到不同的群組里面的,有一個用戶,名叫?root
?,是一個很特殊的用戶,它是超級用戶,擁有最高權(quán)限。
自己創(chuàng)建的用戶是有限權(quán)限的用戶,這樣大大提高了?Linux
?系統(tǒng)的安全性,有效防止誤操作或是病毒攻擊,但是我們執(zhí)行的某些命令需要更高權(quán)限時可以使用?sudo
?命令。
sudo
以?root
?身份運行命令
sudo date --> 當(dāng)然查看日期是不需要sudo的這里只是演示,
sudo 完之后一般還需要輸入用戶密碼的
useradd + passwd
-
useradd
?添加新用戶 -
passwd
?修改用戶密碼
這兩個命令需要?root
?用戶權(quán)限
useradd lion --> 添加一個lion用戶,添加完之后在 /home
路徑下可以查看passwd lion --> 修改lion用戶的密碼
userdel
刪除用戶,需要?root
?用戶權(quán)限
userdel lion --> 只會刪除用戶名,不會從/home中刪除對應(yīng)文件夾userdel
lion -r --> 會同時刪除/home下的對應(yīng)文件夾
su
切換用戶,需要?root
?用戶權(quán)限
sudo su --> 切換為root用戶(exit 命令或 CTRL + D 快捷鍵都可以使普通用戶切換為
root 用戶)su lion --> 切換為普通用戶su - --> 切換為root用戶
群組的管理
Linux
?中每個用戶都屬于一個特定的群組,如果你不設(shè)置用戶的群組,默認會創(chuàng)建一個和它的用戶名一樣的群組,并且把用戶劃歸到這個群組。
groupadd
創(chuàng)建群組,用法和?useradd
?類似。
groupadd friends
groupdel
刪除一個已存在的群組
groupdel foo --> 刪除foo群組
groups
查看用戶所在群組
groups lion --> 查看 lion 用戶所在的群組
usermod
用于修改用戶的賬戶。
【常用參數(shù)】
-
-l
?對用戶重命名。需要注意的是?/home
?中的用戶家目錄的名字不會改變,需要手動修改。 -
-g
?修改用戶所在的群組,例如?usermod -g friends lion
修改?lion
?用戶的群組為?friends
?。 -
-G
?一次性讓用戶添加多個群組,例如?usermod -G friends,foo,bar lion
?。 -
-a
-G
?會讓你離開原先的群組,如果你不想這樣做的話,就得再添加?-a
?參數(shù),意味著append
?追加的意思。
chgrp
用于修改文件的群組。
chgrp bar file.txt --> file.txt文件的群組修改為bar
chown
改變文件的所有者,需要?root
?身份才能運行。
chown lion file.txt --> 把其它用戶創(chuàng)建的file.txt轉(zhuǎn)讓給lion用戶chown
lion:bar file.txt --> 把file.txt的用戶改為lion,群組改為bar
【常用參數(shù)】
-
-R
?遞歸設(shè)置子目錄和子文件,?chown -R lion:lion /home/frank
?把?frank
?文件夾的用戶和群組都改為?lion
?。
文件權(quán)限管理
chmod
修改訪問權(quán)限。
chmod 740 file.txt
【常用參數(shù)】
-
-R
?可以遞歸地修改文件訪問權(quán)限,例如?chmod -R 777 /home/lion
修改權(quán)限的確簡單,但是理解其深層次的意義才是更加重要的。下面我們來系統(tǒng)的學(xué)習(xí)Linux
?的文件權(quán)限。
[root@lion ~]# ls -ldrwxr-xr-x 5 root root 4096 Apr 13
2020 climblrwxrwxrwx 1 root root 7 Jan 14 06:41 hello2.c -> hello.c-rw-r--r-- 1
root root 149 Jan 13 06:14 hello.c
其中?drwxr-xr-x
?表示文件或目錄的權(quán)限。讓我們一起來解讀它具體代表什么?
-
d
?:表示目錄,就是說這是一個目錄,普通文件是?-
?,鏈接是?l
?。 -
r
?:read
?表示文件可讀。 -
w
?:write
?表示文件可寫,一般有寫的權(quán)限,就有刪除的權(quán)限。 -
x
?:execute
?表示文件可執(zhí)行。 -
-
?:表示沒有相應(yīng)權(quán)限。
權(quán)限的整體是按用戶來劃分的,如下圖所示:
現(xiàn)在再來理解這句權(quán)限?drwxr-xr-x
?的意思:
- 它是一個文件夾;
- 它的所有者具有:讀、寫、執(zhí)行權(quán)限;
- 它的群組用戶具有:讀、執(zhí)行的權(quán)限,沒有寫的權(quán)限;
- 它的其它用戶具有:讀、執(zhí)行的權(quán)限,沒有寫的權(quán)限。
現(xiàn)在理解了權(quán)限,我們使用?chmod
?來嘗試修改權(quán)限。chmod
?它不需要是?root
?用戶才能運行的,只要你是此文件所有者,就可以用?chmod
?來修改文件的訪問權(quán)限。
數(shù)字分配權(quán)限
因此要改變權(quán)限,只要做一些簡單的加法就行:文章來源:http://www.zghlxwxcb.cn/news/detail-431114.html
chmod 640 hello.c # 分析6 = 4 + 2 + 0 表示所有者具有
rw 權(quán)限4 = 4 + 0 + 0 表示群組用戶具有 r 權(quán)限0 = 0 + 0 + 0 表示其它用戶沒有權(quán)限對應(yīng)文字權(quán)限為:
-rw-r-----
用字母來分配權(quán)限
-
u
?:user
?的縮寫,用戶的意思,表示所有者。 -
g
?:group
?的縮寫,群組的意思,表示群組用戶。 -
o
?:other
?的縮寫,其它的意思,表示其它用戶。 -
a
?:all
?的縮寫,所有的意思,表示所有用戶。 -
+
?:加號,表示添加權(quán)限。 -
-
?:減號,表示去除權(quán)限。 -
=
?:等于號,表示分配權(quán)限。
chmod u+rx file --> 文件file的所有者增加讀和運行的權(quán)限chmod g+r file -->
文件file的群組用戶增加讀的權(quán)限chmod o-r file -->
文件file的其它用戶移除讀的權(quán)限chmod g+r o-r file -->
文件file的群組用戶增加讀的權(quán)限,其它用戶移除讀的權(quán)限chmod go-r file -->
文件file的群組和其他用戶移除讀的權(quán)限chmod +x file -->
文件file的所有用戶增加運行的權(quán)限chmod u=rwx,g=r,o=- file --> 文件file的所有者分配讀寫和執(zhí)行的權(quán)限,
群組其它用戶分配讀的權(quán)限,其他用戶沒有任何權(quán)限
?文章來源地址http://www.zghlxwxcb.cn/news/detail-431114.html
到了這里,關(guān)于Linux操作系統(tǒng)命令大全的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!