共計 6686 個字符,預計需要花費 17 分鐘才能閱讀完成。
本篇內容介紹了“linux os 指的是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
在 linux 中,OS 是指操作系統,是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”上的最基本的系統軟件,任何其他軟件都必須在操作系統的支持下才能運行。OS 存在的原因:單純的硬件計算機,操作起來效率特別低下,難度特別高。
Linux 是指令操作的,距離 OS 更近,更便于我們掌握 OS。學習 C ++,一般從事后端較多,并且 Linux 對于想要從事后端是非常重要,LInux 很大概率就是工作的 OS。
一.OS(操作系統)基本概念
操作系統(Operating System,簡稱 OS)是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”上的最基本的系統軟件,任何其他軟件都必須在操作系統的支持下才能運行。
OS 存在的原因:單純的硬件計算機,操作起來效率特別低下,難度特別高。
OS 是一款軟件,用來進行對軟硬件資源進行管理的軟件,管理目的:對上,對下,提高操作效率。
現實生活中的操作系統
win7
Mac
Android
iOS
二.Linux 常見指令
我們為什么要學習指令呢?
因為所有的操作系統,剛開始的時候都是支持指令操作的,圖形化界面是后來才有的,所以指令執行距離 OS 更近,便于我們更好的掌握 OS。
1.ls 指令
(1)語法:ls [選項] [目錄或文件] (目錄或文件不寫為當前目錄)
(2)功能:對于目錄,該命令列出該目錄下的所有子目錄和文件。
對于文件,將列出文件名及其他信息。
(3)常用選項
① 直接使用 ls 只有子目錄和文件
② -l 列出文件的詳細信息(可以寫成 ls -l,也可以寫成 ll)
③ -a 列出目錄下的所有文件,包括以 . 開頭的隱含文件
以 . 開頭的文件我們稱為隱藏文件,在任意目錄下,都會存在兩個隱藏文件
.(當前路徑)..(上級路徑)
④ -i 輸出文件的 i 節點的索引信息
⑤ -n 用數字的 UID,GID 代替名稱
(4)舉例
ls -al
2.pwd 指令
(1)語法:pwd
(2)功能:顯示用戶當前所在目錄
Linux 的路徑分割符是:/(斜杠)
Window 的路徑分割符是:\(反斜杠)
(3)舉例
pwd
3.cd 指令
我們一般定位某個文件,是通過路徑定位的方式,找到文件的。那為什么我們是通過路徑的方式定位文件的呢?
Linux 的目錄結構本質是一顆多叉樹(1. 每一個子節點既可以是一個目錄(再放目錄或者普通文件,遞歸式的定義),也可以是一個普通文件 2. 這顆多叉樹的葉子節點,一定是一個普通文件或者空目錄)
因此任何一個節點,可以有多個子節點,但是任何一個子節點,都只有一個父節點。
所以常規的路徑定位是具有唯一性的(絕對路徑具有唯一性)
除了相對路徑,還有絕對路徑(相對于當前所處的路徑)
如果是日常使用,推薦相對路徑 —— 簡單
如果是添加配置文件之類,推薦絕對路徑 —— 不會出錯
(1)語法:cd [目錄名]
(2)功能:改變工作目錄,將當前工作目錄改變到指定的目錄下。(進入輸入的目錄)
(3)常用選項
① cd .. 返回上級目錄(. 為當前目錄,.. 為上級目錄)
② cd 絕對路徑
③ cd 相對路徑
④ cd – 返回最近訪問目錄
⑤ cd ~ 進入用戶家目錄(/home/hb)
(4)舉例
cd .. :返回上級目錄
cd /home/hb/code :絕對路徑
cd ../test :相對路徑
cd – :返回最近訪問目錄
cd ~ :進入用戶家目錄
4.touch 指令
如果我們創建了一個空文件,在磁盤中會占據空間嗎?
要占用 文件有屬性數據,也是數據
文件 = 文件內容 + 文件屬性
我們要學的所有的文件操作無非兩類:
①對文件的內容操作
②對文件的屬性操作
(1)語法:touch [選項] [文件]
(2)功能:touch 命令參數可更改文檔或目錄的日期時間,包括存取時間和更改時間,或者新建一個不存在的文件,
(3)常用選項
① 直接使用 touch 創建一個文件
(4)舉例
touch test.c
5.mkdir 指令
(1)語法:mkdir [選項] [目錄名字]
(2)功能:在當前目錄下創建一個目錄
(3)常用選項
-p [路徑名稱] 可以是一個路徑名稱,此時若路徑中的某些目錄尚不存在,加上此選項后,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄
(4)舉例
mkdir dir :創建一個目錄
mkdir -p dir1/dir2/dir3 :遞歸建立多個目錄
6.rmdir 指令 rm 指令
rmdir 是一個于 mkdir 相對于的指令,mkdir 是建立目錄,而 rmdir 是刪除目錄
Ⅰ. rmdir:
(1)語法:rmdir [選項] [目錄名字]
(2)功能:刪除空目錄
(3)常用選項
① -p 當子目錄被刪除后如果父目錄也變成空目錄的話,就連帶父目錄一起刪除
(4)舉例
rmdir dir
rmdir -p dir
Ⅱ. rm(一般這個用的較多)
(1)語法:rm [選項] [目錄名字]
(2)功能:刪除文件或目錄
(3)常用選項
① 直接使用 rm 刪除一個文件或目錄(文件都可以刪除,但只能刪除空目錄)
② -r 刪除目錄及其下的所有文件(可以刪除非空目錄)
③ -f 強制刪除文件,即使文件屬性為只讀(即寫保護)
④ -i 刪除前逐一詢問確認
(4)舉例
rm dir :刪除目錄
rm test :刪除文件
rm -r dir :刪除目錄下所有文件
rm -rf dir :強制刪除目錄下所有文件
rm -ir dir :刪除目錄下所有文件時依次詢問
* 通配符:匹配當前目錄下的任何內容
rm *:刪除當前目錄下的所有文件(等價于 rm ./*)
./ 當前目錄:告知系統,要訪問的資源在當前目錄下,如果省略,部分情況下,默認就是當前目錄
7.man 指令
(1)語法:man [選項] 命令
(2)功能:man 相當于一個聯機手冊,Linux 的命令有很多參數,我們不可能全都記住,這時候就可以使用 man 來獲取幫助。
(3)常用選項
① -k 根據關鍵字搜索聯機幫助
② man man 可以搜索 man 的相關操作
③ 數字 輸入對應的數字,會去查找不同的命令
man 手冊:
1 是普通的命令
2 是系統調用,如 open(通過這個可以很方便的查到如何調用這個函數,以及需要加說明頭文件)
3 是庫函數,如 printf
4 是特殊文件,也就是 /dev 下的各種設備文件
5 是指文件的格式,比如 password,就會說明這個文件中各個字段的函數
6 是給游戲留的,由各個游戲自己定義
7 是附件和一些變量,比如像 environ 這種全局變量在這里就由有說明
8 是系統管理用的命令,這些命令只能由 root 使用,如 ifconfigman 相當于一個聯機手冊,Linux 的命令有很多參數,我們不可能全都記住,這時候就可以使用 man 來獲取幫助。
(4)舉例
man 1 ls
man 3 printf
8.cp 指令
(1)語法:cp [選項] 源文件或目錄 目標文件或目錄
(2)功能:復制文件或目錄
(3)常用選項
① 直接使用 cp 復制一個文件
② -r 遞歸處理,將指定目錄下的文件和子目錄一并復制
③ -f 強制復制文件或目錄,不論目的文件或目錄是否已經存在
④ -i 覆蓋之前先詢問
(4)舉例
cp file.txt file2.txt
cp -r dir1 dir2
cp -rf dir ..
9.mv 指令
mv 命令是 move 的縮寫,可以用來移動文件或者將文件改名,經常用來備份文件或者目錄。
(1)語法:mv [選項] 源文件或目錄 目標文件或目錄
(2)功能:
根據 mv 命令中第二個參數類型的不同(是目標文件還是目標目錄),mv 命令將文件重命名或將其移至一個新的目錄中。
①當第二個參數類型是源文件(源目錄)時,mv 命令完成文件重命名,此時,源文件只能有一個,它將所給的源文件或目錄重命名為給定的目標文件名
②當第二個參數類型是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv 命令將各參數指定的源文件均移至目標目錄中
(3)常用選項
① 直接使用 mv 移動或重命名一個文件或目錄
② -f 如果目標文件已經存在,不會詢問直接覆蓋
③ -i 若目標文件已經存在時,會詢問是否覆蓋
(4)舉例
mv file.txt a.txt
mv file.txt ..
mv dir1 dir2 dir
10.cat 指令
(1)語法:cat [選項] [文件]
(2)功能:查看目標文件的內容
(3)常用選項
① -n 輸出行編號
(4)舉例
cat file.txt
cat -n file.txt
除了 cat,還有 tac,從后往前查看
tac file.txt
重定向:
這里先介紹一個 echo,類似于 printf,輸出信息到顯示器上。
例如:echo hello world
(1)輸出重定向
創建一個文件 touch file.txt,然后可以通過 echo hello world file.txt,使本來應該寫入到顯示器的內容,把它寫入到文件中(每次都會情況原始文件的內容,進行重新寫入)
(2)追加重定向
echo hello Linux file.txt,類似上面的輸出重定向,但是這里是兩個,并且它不會清空原始內容,而是在原始文件的結尾進行新增式的寫入
(3)輸入重定向
cat file.txt,輸入重定向是把本來應該從鍵盤文件中讀取數據的方式,改成從指定的文件中讀取
11.more 指令
(1)語法:more [選項] [文件]
(2)功能:功能類似 cat,但是可以手動向下翻
(3)常用選項
① -n 輸出行編號
② q 退出 more
(4)舉例
more file.txt
12.less 指令
(1)語法:less [選項] 文件
(2)功能:類似 cat 和 more,但是功能更強大,可以向上和向下翻(一般都使用 less)
(3)常用選項
① -n 輸出行編號
② q 退出 less
(4)舉例
less file.txt
13.head 指令
(1)語法:head [選項] [文件]
(2)功能:顯示文件開頭(默認顯示開頭 10 行)
(3)常用選項
① -n 行數 想要顯示的行數
(4)舉例
head -20 file.txt
14.tail 指令
(1)語法:rm [選項] [文件]
(2)功能:顯示末尾開頭(默認顯示末尾 10 行)
(3)常用選項
① -n 行數 想要顯示的行數
(4)舉例
tail -20 file.txt
管道:
如果我們想要查看文件的中間部分,比如一個 1 萬行的文本,我們想要查看 [5000, 5030] 行的信息,我們怎么辦呢?
①創建臨時文件
通過 head -5030 file.txt temp.txt,先得到一個臨時文件,然后在 tail -30 temp.txt,我們才能看到 [5000, 5030] 中的信息了。
比較復雜。
②管道
管道是用來級聯多個命令,來完成流水線式的數據處理工作的。(可以傳輸數據資源)
| 這個就是管道
這么寫 head -5030 file.txt | tail -30 就可以通過管道來完成查看了。
15.date 指令(時間相關指令)
(1)語法:date [選項] [格式]
(2)功能:指定格式顯示時間或者顯示時間戳
(3)常用選項
① 在顯示上,使用者可以設定想要顯示出的格式,格式設定為一個 + 后接標記,其中常用的標記列表如下:
%H:小時
%M:分鐘
%S:秒
%X:相當于 %H:%M:%S
%d:日
%m:月份
%Y:年份
%F:相當于 %Y-%m-%d
② 時間戳
時間 - 時間戳 date+%s
時間戳 - 時間 date -d@時間戳
時間戳是從 1970 年 1 月 1 日開始所經過的秒數,不考慮閏秒
(4)舉例
date +%Y-%m-%d_%H:%M:%S
date +%s
16.cal 指令
(1)語法:cl [選項] [年份]
(2)功能:顯示日歷
(3)常用選項
① 直接使用就是當前月份
② -3 顯示前一個月,當前月,下一個月的月歷
③ -y 顯示當前年份的年歷
(4)舉例
cal -3
cal -y 2020
17.find 指令
find 命令在目錄結構中搜索文件,并執行指定的操作
Linux 下 find 命令提供了相當多的查找條件,功能很強大。由于 find 具有強大的功能,因次它的選項也很多。
(1)語法:find [查找位置] [選項] [查找]
(2)功能:用于在文件樹中查找文件,并作出相應的處理(可能訪問磁盤)
(3)常用選項
① -name 按照文件名查找文件
(4)舉例
find /usr/include/ -name stdio.h
18.grep 指令
(1)語法:grep [選項] 搜尋的字符串 文件
(2)功能:在文件中搜索字符串,將找到的行打印出來(使用正則表達式搜索)
(3)常用選項
① 直接使用 grep,打印出帶有想要字符串的行
② -i 忽略大小寫的不同,將大小寫視為相同
③ -n 輸出行號
④ -v 反向打印,打印出沒有想要搜尋的字符串的那些行
(4)舉例
grep hello file.txt
grep -i HeLlo file.txt
grep -iv HeLlo file.txt
19.zip/unzip 指令
1.zip:
(1)語法:zip 定義壓縮文件名.zip [目錄或文件]
(2)功能:將目錄或文件壓縮成 zip 格式
(3)常用選項
① 直接使用 zip 壓縮一個文件
② -r 可壓縮一個目錄下的所有文件
(4)舉例
zip test.zip package
zip -r test.zip tar_package
zip -r test.zip -d tar_package
2.unzip
(1)語法:unzip 壓縮文件
(2)功能:解壓縮
(3)常用選項
① 直接使用 unzip 解壓縮
② -d 指定壓縮到哪一個路徑下
(4)舉例
unzip test.zip
unzip test.zip -d /home
20.tar 指令
(1)語法:tar [選項] [文件或目錄]
(2)功能:壓縮文件或解壓縮
(3)常用選項
① -c 建立一個壓縮文件
② -z 判斷是否具有 gzip 的屬性,是否需要用 gzip 壓縮
③ -f 使用檔名,在 f 之后要立即接檔名,不能再加參數
④ -x 解開一個壓縮文件
⑤ -t 查看壓縮包里面的文件
⑥ -v 壓縮的過程中顯示文件
⑦ -C 解壓到指定目錄下
(4)舉例
tar czf test.tgz tar_package // 壓縮文件
tar xzf test.tgz // 解壓縮
tar xzf test.tgz -C /home // 解壓縮到指定目錄
tar xzvf test.tgz 解壓縮過程顯示文件
21.bc 指令
(1)語法:bc [數字][符號][數字]
(2)功能:計算器
(3)常用選項
① 直接使用 bc 計算
(4)舉例
bc 1+2
22.uname 指令
(1)語法:uname [選項]
(2)功能:用來獲取電腦和操作系統的相關信息(可用來顯示 linux 主機所用的操作系統的版本、硬件名稱等基本信息)
(3)常用選項
① -r 顯示內核版本
② -a 詳細輸出所有信息,依次為內核名稱、主機名、內核版本號、內核版本、硬件名、處理器類型、硬件平臺類型、操作系統名稱
(4)舉例
uname -r
uname -a
23. 熱鍵
① Tab:命令自動補齊
② Ctrl+c:終止失控程序
③ Ctrl+d:快速退出賬戶
④ Ctrl+r:搜索歷史命令
24. 關機指令
(1)語法:shutdown [選項]
(2)功能:關機
(3)常用選項
① -h 將系統的服務停掉后,立即關機
② -r 在將系統的服務停掉之后就重重新啟動
③ -t 在 - t 后加秒數,表示過多少秒關機
(4)舉例
shutdown -h
三.shell 命令及運行原理
1. 介紹
Linux 嚴格意義上說的是一個操作系統,我們稱之為”核心(kernel)“,但是一般用戶不能直接使用 kernel,而是通過 kernel 的”外殼“程序,也就是 shell,來與 kernel 溝通。(shell 是一種外殼程序)
2. 作用
外殼可以保護 OS 系統,降低操作 OS 的成本,
shell 外殼:傳遞用戶指令,交給 OS,OS 執行完畢,結果交給 shell,shell 再交給用戶。
從技術角度,Shell 的簡單定義:命令行解釋器包含:
①將使用者的命令翻譯給 kernel 處理
②同時,將核心的處理結果翻譯給使用者
Linux 中,外殼就是命令行解釋器。
Window 中,外殼就是圖形化界面
在 centos 7 中常用的命令行解釋器(shell),叫做 bash
四.Linux 權限概念
Linux 下有兩種用戶:①超級用戶(root)②普通用戶
①超級用戶:可以在 Linux 系統下做任何事情,不受限制
②普通用戶:在 Linux 下做有限的事情
③超級用戶的命令提示符是 #,普通用戶的命令提示符是 $
命令:su [用戶名]
功能:切換用戶
從普通用戶切換到 root 用戶,使用 su root 或 su – ,從 root 用戶切換到普通用戶 user,使用 su user
舉例:
su -
su user
“linux os 指的是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!