<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux命令使用技巧

馬哥Linux運維 ? 來源:51CTO ? 2024-01-15 10:31 ? 次閱讀

操作系統概述

操作系統 Operating System 簡稱 OS,通俗講就是一款軟件,不過和一般的軟件不同,操作系統是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”上的最基本的系統軟件,任何其他的軟件都必須在操作系統的支持下才能運行。

Linux 文件系統

/var:包含在正常操作中被改變的文件、假脫機文件、記錄文件、加鎖文件、臨時文件和頁格式化文件等。

/home:包含用戶的文件:參數設置文件、個性化文件、文檔、數據、EMALL、緩存數據等,每增加一個用戶,系統就會根據其用戶名在 home 目錄下新建和其他用戶同名的文件夾,用于保存其用戶配置。

/proc:包含虛幻的文件,他們實際上并不存在于磁盤上,也不占用任何空間(用 ls-l 可以顯示它們的大?。┊敳榭催@些文件時,實際上是在訪問存在內存中的信息,這些信息用于訪問系統。

/bin:包含系統啟動時需要的執行文件(二進制),這些文件可以被普通用戶使用。

/etc:為操作系統的配置文件目錄(防火墻、啟動項)

/root:為系統管理員(也叫超級用戶或根用戶)的 Home 目錄。

/dev:為設備目錄,Linux 下設備被當成文件,這樣一來硬件被抽象化、便于讀寫、網絡共享以及需要臨時裝載到文件系統中,正常情況下,設備會有一個獨立的子目錄,這些設備的內容會出現在獨立的子目錄下。

Linux 命令操作

查看當前目錄命令:pwd

打開文件夾命令:cd

打開指定文件夾:cd [目錄名稱]

打開當前用戶的根目錄:cd ~

返回上級目錄:cd …

返回進入目錄:cd -

打開根目錄:cd /

瀏覽目錄下的文件列表命令:ls

以列的方式查看當前目錄下的文件列表:ls -l

查看當前目錄下所有的文件(包括隱藏文件):ls -a

以列表的方式查看當前目錄下的所有文件:ls -la

創建文件目錄命令:mkdir

新建文件目錄:mkdir 文件夾名稱

遞歸新建多級目錄:mkdir -p 文件夾名稱

例如在用戶目錄下新建 test 目錄,命令這樣寫:mkdir -p test/test1/test2/test3 遞歸新建多級目錄的寫法

刪除文件目錄命令:rmkdir

刪除指定目錄:rmkdir 目錄名稱

遞歸刪除指定目錄及中間目錄:rmdir -p 目錄名稱這里沒有寫錯,沒有字母 k

刪除文件或者目錄命令:rm

常用命令:rm -rf [目錄或文件] rm -ri [目錄或文件]

強制刪除文件或目錄:rm -rf 目錄或者文件

在刪除前詢問是否確認刪除:rm -ri 目錄或文件

因為強制刪除的后果不太好,一般不建議使用rm -rf進行文件刪除

rm 命令中不跟 r 參數,無法刪除目錄,只能刪除文件

復制文件或目錄命令:cp

遞歸復制目錄1下的所有的文件和文件夾到目錄2:cp -r [目錄1][目錄2]

執行復制操作時覆蓋原有目錄前詢問用戶:cp -ri [目錄1][目錄2]

移動文件、修改文件名命令:mv

將文件夾1名稱更改為文件夾2:mv 文件1 文件2 (給文件更名)

將目錄1的文件移動到目錄2:mv 目錄2 目錄2 (將目錄1的文件移動到目錄2)

創建文件命令:touch

touch 文件名稱

查看、編輯文件命令:vi

vi 命令為 UNIX 操作系統或者類 UNIX 操作系統都有具有的功能強大的文件編輯命令,用戶輸入 vi ++ 文件名,便可以進入 vi 模式進行文件內容的查看和編輯,如果文件已經存在,則直接打開文件,如果文件不存在,則系統將打開一個全新的空文件。

vi 的三種模式如下:

命令模式

當用戶使用 vi 命令打開文件后,則進入命令模式,用戶可以輸入命令來執行各種功能。

26d0b68e-b20d-11ee-8b88-92fbcf53809c.jpg

輸入模式

如果用戶要對文件做修改,則可以使用下面幾種命令,進入輸入模式,用戶進入輸入模式之后,可以任意修改文件,除了 Esc 鍵外,用戶輸入的任何字符都會被作為內容寫入文件中,用戶輸入 Esc 可以對文件進行相關操作。

26dbec16-b20d-11ee-8b88-92fbcf53809c.jpg

末行模式

如果用戶完成編輯命令,則可以按照 esc + “:” 進入末行模式,用戶可以對文件內容繼續進行搜索,也可以輸入 “:wq!” 進行文件保存并退出,或者輸入 “:q!” 強制退出文件編輯。

26e585f0-b20d-11ee-8b88-92fbcf53809c.jpg

查看、編輯文件命令:cat

顯示一個小的文件的內容:cat 文件名稱

創建并打開一個新的文件:cat > 文件名稱

查看文件開頭內容命令:head

head [參數] [文件名]

例如,使用 head 命令顯示某個文件開始的 n 行數據:head -n 文件名稱

26f116ae-b20d-11ee-8b88-92fbcf53809c.jpg

查看文件結尾內容命令:tail

動態加載某個文件的內容(常用于查看日志文件):tail -f 文件名稱

展示文件最后幾行的數據:tail -n 行數文件名稱

Linux 權限管理

用戶和用戶組

用戶是指在一個操作系統中,一系列權限的集合體,操作人員通過用戶名和口令可以在系統中執行某一些被允許的操作。不同的用戶可以具有不同的權限。Linux 操作系統中每個用戶都具有唯一標識 UID,當使用命令創建用戶時,如果不指定用戶的 UID,則系統將自動為其分配 UID。

用戶組就是具有相同特征的用戶的集合體,在 Linux 系統中,每一個用戶都屬于至少一個用戶組。Linux 操作系統中每個用戶分組都具有唯一標識 GID,當使用命令創建用戶組時,如果不指定用戶組的 GID,則系統將自動為其分配 GID。當使用 -u 指定用戶 id 時,用戶 id 盡量大于500,以免沖突。因為 Linux 操作系統安裝后,會默認建立一些用戶,所以可能會占用 500 之內的 id 號。

Linux 權限機制有以下特點:

系統有一個權限最大的用戶,其名稱為 root ,root 用戶屬于 root 用戶組。

系統默認只有 root 權限可以添加和刪除用戶。

添加用戶之后,如果沒有給用戶指定用戶組,則系統會為用戶添加一個同名的用戶組,用戶屬于該組。

root 切換到普通用戶無需登錄,普通用戶切換到 root 用戶需要登陸。

root 可以給用戶賦予和回收某一個文件的讀、寫、執行的權限。

用戶操作命令

切換用戶命令:su

su [用戶名]或者su -[用戶名]

su[用戶名]和 su -[用戶名]都可以切換用戶,前者類似于臨時切換用戶,當使用該命令進行切換新用戶時,用戶配置仍然沿用原來的用戶配置,如環境變量、系統變量等。而后者進行切換用戶時,環境變量、系統設置全部切換成新用戶的用戶配置。

查看當前登陸用戶命令:whoami

查看當前用戶所屬分組命令:groups

查看當前用戶 UID 和 GID 命令:id

添加新用戶命令:useradd

2702202a-b20d-11ee-8b88-92fbcf53809c.jpg

在 Linux 操作系統中添加用戶:useradd 用戶名

在 Linux 操作系統中添加用戶并指定用戶 UID:useradd -u 指定的 UID 用戶名

修改用戶密碼命令:passwd例如:修改當前用戶名為 sang 的用戶密碼:passwd sang

在添加用戶之后,只有為其設置密碼,用戶才能登陸

270fd7ce-b20d-11ee-8b88-92fbcf53809c.jpg

刪除用戶命令:userdel

刪除用戶:userdel 用戶名

刪除用戶并同時刪除其登陸信息:userdel -r 用戶名

2719c446-b20d-11ee-8b88-92fbcf53809c.jpg

修改用戶信息命令:usermod

語法:usermod [選項] [參數] [用戶名]

修改用戶登錄名:usermod -l 新用戶名 舊用戶名

修改用戶所屬分組:usermod -g 新組名稱 用戶名

27245d48-b20d-11ee-8b88-92fbcf53809c.jpg

添加用戶組命令:groupadd

語法:groupadd [選項] [組名稱]

修改用戶登陸名:groupadd 組名

修改用戶所屬分組:groupadd -g 組 GID 組名

272fe76c-b20d-11ee-8b88-92fbcf53809c.jpg

權限操作

Linux 操作系統為文件定義了讀、寫、執行三種權限,不同的用戶或者用戶組可以具有不同的權限,系統采用 “r”、“w”、“x” 來分別表示文件的讀、寫、執行權限。使用 ls -l 命令可以查看到用戶在當前目錄或者文件的操作權限。

舉列:

drwxr -xr -x. 2 root root 4096 Sep 23 2011 bin

從左至右分別表示如下含義:

d:代表 bin 數目目錄而不是文件

rwx:代表擁有者具有讀、寫、執行的權限

r -x:代表同組用戶具有讀、執行的權限,但是沒有寫權限

r -x:代表其他組用戶具有讀、執行權限,沒有寫權限

常用的變更權限命令為:chmod

語法:chmod [選項] [參數]

273f6034-b20d-11ee-8b88-92fbcf53809c.jpg

chmod 的參數可以分為兩種,分別是權限模式和數字模式。

權限模式:

權限模式使用 u、g、o 分別代表擁有者、同組用戶、其他組用戶,使用 + 和一代表賦予和收回權限,使用 r、w、x 代表讀、寫、執行權限。

例如:將文件01的執行權限給當前用戶,寫權限賦給用戶所在的用戶組和其他用戶。

chmod -r U+X,G+W F01

例如:將文件 f01 的讀、寫、執行的權限賦給當前用戶,將讀、寫權限賦給用戶所在的用戶組和其他用戶。

chmod -r u=rwx,g=rw,o=rw f01

數字模式:

為了簡化授權步驟,用戶也可以采用數字模式進行授權,使用二進制的形式代表 r、w、x 三種權限,如101 (5) =r -x,111 (7) =rwx,100 (3) =r- -

例如:將文件 f01 的讀、寫、執行的權限賦給當前用戶,將讀和執行權限賦給用戶組、將寫和執行權限賦給其他用戶。

chmod 753 -r f01

例如:將文件 f01 的讀、寫、執行權限賦給所有用戶。

chmod 777 -r f01

Linux 進程管理

在 Linux 的應用中,我們需要對進程進行管理,如查看某個進程是否啟動、以及在必要的時刻,殺掉某個線程。

查看進程命令:ps

ps 命令是 Linux 操作系統中查看進程的命令,通過 ps 命令我們可以查看 Linux 操作系統中正在運行的過程,并可以獲得進程的 PID(進程的唯一標識),通過 PID 可以對進程進行相應的管理。

ps -ef | grep [進程關鍵字]

根據進程關鍵詞查看進程命令顯示如下,顯示的進程列表中第一列表示開啟進程的用戶,第二列表示進程唯一標識 PID,第三列表示父進程 PPID,第四列表示 CPU 占用資源比列,最后一列表示進程所執行程序的具體位置。

[shang@localhost ~]$ ps -ef|grep sshd
root 1829 1  0 May24 ?   00:00:00 /usr/sbin/sshd
shang 24166 24100  0   20:17 pts/2  00:00:00      grep  sshd
[shang@localhost ~]$

殺掉進程命令:kill

當系統中有進程進入死循環,或者需要被關閉時,我們可以使用 kill 命令對其關閉。

kill -9 [PID]PID 為 Linux 操作系統中進程的標識

Linux 其他常用命令大全

清屏命令:clear

查詢命令詳細參數命令:man

掛載命令:mnt

遠程連接服務 SSH 相關命令:

啟動 SSH 服務命令:service sshd start

重啟 SSH 服務命令:service sshd restart

關閉 SSH 服務命令:service sshd stop

Linux 大多數情況下都是遠程服務器,開發者通過遠程工具連接 Linux ,啟動了某個項目的 JAR,一旦窗口關閉,JAR 也就停止運行了,因此一般通過如下命令啟動 JAR:nohup java -jar jar-0.0.1-SNAPSHOT.jar &

這里多了 nohup ,表示當前窗口關閉時服務不掛起,繼續在后臺運行

Linux 系統軟件安裝

常用軟件安裝

Linux 下常用的軟件安裝方式有3種。

tar 安裝:如果開發商提供的是 tar、tar.gz、tar.bz 格式的包(其中 tar 格式的為打包后沒有壓縮的包,gz 結尾的是按照 gzip 打包并壓縮的軟件包,tar.bz 是按照二進制方式打包并壓縮的軟件包),可以采用 tar 包安裝,tar 安裝方式本質上是解壓軟件開發商提供的軟件包,之后在通過相應配置,完成軟件的安裝。

rpm 安裝:rpm 安裝方式是 redhat Linux 系列推出的一個軟件包管理器,類似于 Windows 下的 exe 安裝程序,可以直接使用 rpm 命令安裝。

yum 安裝:yum 安裝本質上依然是 rpm 包安裝,和 rpm 安裝方式的不同之處是用戶可以通過 yum 參數,指定安裝的軟件包,系統將自動從互聯網上下載相應的 rpm 軟件包。而無須用戶關心軟件包的下載地址,以及軟件包的依賴關系。

軟件安裝常用命令

解壓壓縮命令:tar

語法:tar [選項] [壓縮包]

解壓 gzip 包:tar -zxvf [包名]

解壓 bz 包:tar -jxvf [包名]

解壓普通包:tar -xvf [包名]

2750a92a-b20d-11ee-8b88-92fbcf53809c.jpg

安裝卸載命令:rpm

語法:rpm [選項] [軟件包]

查詢是否已經安裝了某軟件包:rpm -qa|grep [軟件包關鍵詞]

卸載已經安裝的軟件包:rpm -e 軟件包全名

安裝軟件包并查看進度:rpm -ivh 軟件包路徑

2760f3fc-b20d-11ee-8b88-92fbcf53809c.jpg

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11022

    瀏覽量

    207054
  • 操作系統
    +關注

    關注

    37

    文章

    6363

    瀏覽量

    122126
  • 文件系統
    +關注

    關注

    0

    文章

    272

    瀏覽量

    19735
  • 命令
    +關注

    關注

    5

    文章

    638

    瀏覽量

    21863

原文標題:可解決 95% 以上問題的Linux命令,能用到退休!

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    后端開發必備Linux命令匯總

    后端開發必備Linux命令匯總
    發表于 11-21 14:05 ?295次閱讀

    介紹一些實用的Linux命令

    作為一名軟件開發人員,掌握 Linux 命令是必不可少的技能。即使你使用 Windows 或 macOS,你總會遇到需要使用 Linux 命令的場合。例如,大多數 Docker 鏡像都
    發表于 08-01 16:12 ?210次閱讀
    介紹一些實用的<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>

    嵌入式Linux命令總結

    嵌入式Linux命令總結
    發表于 09-19 16:30 ?323次閱讀

    Linux命令和技巧

    Linux命令和技巧 1. mount umount 命令Linux里面想要使用你的軟盤和光盤可不是像在Windows里面那么的危險。 想想看如果你在Windows里面安裝一個光盤
    發表于 01-18 09:59 ?611次閱讀

    Linux命令大全

    Linux命令大全,雖然不是每個命令都必須記住,有些命令也不常用,作為一本很好的工具書,它可以做的有備無患!
    發表于 10-30 17:16 ?23次下載

    linux命令大全

    書中收集了豐富的Linux命令,是Linux技術開發者的好工具
    發表于 08-08 18:20 ?3次下載

    linux命令大全

    linux命令大全,又需要的朋友可以下來看看。
    發表于 12-11 16:57 ?0次下載

    Linux命令大全完整版

    Linux命令大全完整版
    發表于 12-16 22:33 ?0次下載

    Linux命令大全

    Linux命令大全
    發表于 10-30 09:49 ?8次下載
    <b class='flag-5'>Linux</b>的<b class='flag-5'>命令</b>大全

    6個有趣的Linux命令案例講解

    6個有趣的Linux命令案例講解
    發表于 08-11 17:49 ?12次下載

    危險的Linux命令清單

    有人無數次問我這個問題,我一直避免回答,因為沒有一個明確的危險的 Linux 命令清單。
    的頭像 發表于 09-26 09:16 ?906次閱讀

    Linux 命令大全建議收藏

    本文為 Linux 命令大全,從 A 到 Z 都有總結,建議大家收藏以便查用,或者查漏補缺!
    的頭像 發表于 05-12 10:53 ?626次閱讀

    shell命令linux命令一樣嗎

    Shell命令Linux命令并不完全一樣。 首先,Shell是一種命令行解釋器,它是用來解釋和執行用戶輸入的命令的。Shell既是一種
    的頭像 發表于 11-08 10:51 ?1703次閱讀

    linux命令和shell編程有什么聯系

    Linux命令和Shell編程之間存在密切的聯系。 首先,Shell是Linux命令行下的解釋器,它提供了一個用戶界面,使用戶能夠與Linux
    的頭像 發表于 11-08 10:53 ?473次閱讀

    linux命令概述

    電子發燒友網站提供《linux命令概述.pdf》資料免費下載
    發表于 03-11 09:18 ?3次下載
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>