日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

linux基礎(chǔ)命令運(yùn)用

作者:清風(fēng)自來86 更新時(shí)間: 2022-07-10 編程語言

目錄

一、Shell

二、LINUX命令的分類

1、內(nèi)部命令與外部命令的區(qū)別

三、linux基礎(chǔ)應(yīng)用

1、切換用戶

2、查看當(dāng)前主機(jī)的完整名稱

3、臨時(shí)設(shè)置主機(jī)名

4、永久設(shè)置主機(jī)名

5、查看當(dāng)前系統(tǒng)版本信息

6、查看當(dāng)前內(nèi)核版本

7、臨時(shí)修改網(wǎng)卡IP

8、永久修改網(wǎng)卡IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33

9、重啟網(wǎng)卡

10、查看網(wǎng)卡地址

11、重啟系統(tǒng)

12、關(guān)機(jī)

13、關(guān)閉防火墻軟件

四、linux常用命令

1、內(nèi)部命令

2、命令行格式

?3、Linux命令行的輔助操作

4、獲得命令幫助的方法

5、查看當(dāng)前工作目錄:pwd

6、切換工作目錄:cd (相對(duì)路徑、絕對(duì)路徑)

7、ls——列表顯示目錄內(nèi)容(常用選項(xiàng)、可結(jié)合通配符)

1.顯示目錄中內(nèi)容,包括子目錄和文件相關(guān)屬性信息

2.常用選項(xiàng)l、-a、-A、-d、-h、-R、–color

3.結(jié)合通配符

4.ls的常用選項(xiàng)

8、擴(kuò)充

9、設(shè)置別名-alias

10、統(tǒng)計(jì)目錄及文件空間占用-du

11、創(chuàng)建新目錄mkdir

12、創(chuàng)建空文件-touch

13、創(chuàng)建鏈接文件-ln(軟鏈接、硬鏈接)

14、復(fù)制文件或目錄-cp

15、刪除文件或目錄-rm

16、移動(dòng)文件或目錄/改名mv

17、查找命令/文件存放目錄which

18、查找文件或目錄-find

18.1 Find工具-name參數(shù)案列:

18.2 Find工具-size參數(shù)案列

18.3Find工具-type參數(shù)案列:

18.4 查找存在的用戶的文件



一、Shell

●Linux系統(tǒng)中運(yùn)行的一種特殊程序

●在用戶和內(nèi)核之間充當(dāng)“翻譯官”

●用戶登錄linux系統(tǒng)時(shí),自動(dòng)加載一個(gè)Shell程序

●Bash是Linux系統(tǒng)中默認(rèn)使用的Shell程序

???? 文件位于/bin/bash

???? 接收用戶輸入的命令

???? 解釋命令

???? 傳遞給系統(tǒng)內(nèi)核執(zhí)行

二、LINUX命令的分類

1、內(nèi)部命令與外部命令的區(qū)別

內(nèi)部命令

外部命令

集成于Shell解釋器程序內(nèi)部的一些特殊指令,也稱為內(nèi)建(Built-in)指令

Linux系統(tǒng)中能夠完成特定功能的腳本文件或二進(jìn)制程序

屬于Shell的一部分

屬于Shell解釋器程序之外的命令

沒有單獨(dú)對(duì)應(yīng)的系統(tǒng)文件

每個(gè)外部命令對(duì)應(yīng)了系統(tǒng)中的一個(gè)文件

自動(dòng)載入內(nèi)存,可以直接使用

必須知道其對(duì)應(yīng)的文件位置,由Shell加載后才能執(zhí)行/bin,/usr/bin,/usr/local/bin

區(qū)別

1、內(nèi)部命令屬于shell的一部分,外部命令屬于shell程序之外的命令。內(nèi)部命令直接調(diào)用,外部命令會(huì)調(diào)用一個(gè)獨(dú)立文件,內(nèi)部命令比外部命令快

2、內(nèi)部命令屬于shell的一部分(/bin/bash)沒有單獨(dú)的文件,外部命令一般由腳本文件或者二進(jìn)制文件組成。

3、內(nèi)部命令自動(dòng)加載,可以直接使用,外部命令系統(tǒng)必須要知道對(duì)應(yīng)的文件位置(命令的環(huán)境變量),由shell進(jìn)行加載后,系統(tǒng)才能識(shí)別該命令
?

三、linux基礎(chǔ)應(yīng)用

[root@localhost ~]#

[當(dāng)前登錄系統(tǒng)的用戶@主機(jī)名稱 當(dāng)前所在的目錄]#

# 表示為管理員登錄

$ 表示為普通用戶登錄

1、切換用戶

su 用戶名??????????? #切換后所在目錄不變

su - 用戶名???????? #切換后所在目錄變成用戶家目錄

2、查看當(dāng)前主機(jī)的完整名稱

hostname

3、臨時(shí)設(shè)置主機(jī)名

hostname 主機(jī)名

4、永久設(shè)置主機(jī)名

hostnamectl set-hostname 主機(jī)名

5、查看當(dāng)前系統(tǒng)版本信息

cat /etc/redhat-release

cat /etc/*release

6、查看當(dāng)前內(nèi)核版本

uname -r

7、臨時(shí)修改網(wǎng)卡IP

ifconfig ens33 192.168.80.3/24

ifconfig ens33 192.168.80.3 netmask 255.255.255.0

8、永久修改網(wǎng)卡IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet???????????? #設(shè)置網(wǎng)卡類型,“Ethernet”表示以太網(wǎng)

DEVICE=ens33????????????? #設(shè)置網(wǎng)卡的名稱

ONBOOT=yes??????????????? #設(shè)置網(wǎng)卡是否在 Linux 操作系統(tǒng)啟動(dòng)時(shí)激活

BOOTPROTO=static????????? #設(shè)置網(wǎng)卡的配置方式,“static”表示使用靜態(tài)IP地址
                                              “dhcp”時(shí)表示動(dòng)態(tài)獲取地址

IPADDR=192.168.80.3?????? #設(shè)置網(wǎng)卡的 IP 地址

NETMASK=255.255.255.0??   #設(shè)置網(wǎng)卡的子網(wǎng)掩碼

GATEWAY=192.168.80.2????  #設(shè)置網(wǎng)卡的默認(rèn)網(wǎng)關(guān)地址
 
DNS1=114.114.114.114? ?  ?#設(shè)置DNS服務(wù)器的 IP 地址

9、重啟網(wǎng)卡

systemctl restart network?????????? #重啟所有的網(wǎng)卡

ifdown ens33???????????????????????????? #關(guān)閉某個(gè)網(wǎng)卡

ifup ens33??????????????????????????????????????? #啟動(dòng)某個(gè)網(wǎng)卡

ifconfig ens33 down???????????????????????? #臨時(shí)禁用某個(gè)網(wǎng)卡

ifconfig ens33 up?????????????????????? #重新激活某個(gè)網(wǎng)卡(不會(huì)更新IP地址)

10、查看網(wǎng)卡地址

Ifconfig-a?? (查看當(dāng)前系統(tǒng)中所有狀態(tài)的網(wǎng)卡系統(tǒng))

ip a?? 【ip address】查看活躍網(wǎng)卡

11、重啟系統(tǒng)

reboot??????????

init 6

shutdown -r now

12、關(guān)機(jī)

poweroff

init 0

shutdown -h now

shutdown -c

13、關(guān)閉防火墻軟件

1. 臨時(shí)關(guān)閉命令: systemctl stop firewalld.service

2. 查看服務(wù)狀態(tài)?:systemctl status firewalld.service

3. 永久關(guān)閉(下次開機(jī)不自啟動(dòng)): systemctl disable firewalld.service

Stenforce 0 核心防護(hù)關(guān)閉

四、linux常用命令

1、內(nèi)部命令

type #查詢內(nèi)部外部指令
enable-n + 指令 #禁用內(nèi)部指令
enable + 指令 #開啟指令
help #幫助
? ? ls --help #外部命令查詢幫助
? ? help cd #內(nèi)部命令查詢幫助
echo #shell內(nèi)嵌/也可以是外部指令(給出具體命令所在)
hash #可以直接調(diào)取緩存中的指令
which + 指令 #查詢指令所在路徑與別名
?

2、命令行格式

命令字? ? ?選項(xiàng)? ? ?參數(shù)

命令字:唯一確定一條指令,是整條命令中最關(guān)鍵的部分
選項(xiàng):長格式:使用“- -”符號(hào)引導(dǎo);短格式:使用“-”符號(hào)引導(dǎo)
參數(shù):用來處理對(duì)象;可以是文件名、目錄(路徑)名或者用戶名等內(nèi)容;個(gè)數(shù)可以是0到多個(gè)

?3、Linux命令行的輔助操作

1.Tab鍵:自動(dòng)補(bǔ)齊/按兩下幫忙查詢相同前綴的目錄或文件(cd會(huì)顯示目錄,vim會(huì)顯示文件)

2.反斜杠“\”強(qiáng)制換行(在長命令的情況下使用便于排錯(cuò),更加工整)

3.Ctrl+U組合鍵:清空至行首

4.Ctrl+K組合鍵:清空至行尾
?

5.Ctrl+L組合鍵:清屏,或者clear

6.Ctrl+C組合鍵:取消本次命令編輯

7.Ctrl+A組合鍵:切換到行首

8.Ctrl+E組合鍵:切換到行尾
?

4、獲得命令幫助的方法

命令幫助help

顯示命令的幫助信息,命令的參數(shù)和用法等

命令“-help”選項(xiàng)

適用與大多數(shù)的Linux的外部命令

man命令的使用

  • 可以使用方向鍵滾動(dòng)文本
  • 使用Page Up和Page Down鍵翻頁
  • 按Q或q鍵退出閱讀環(huán)境
  • 按“\”鍵查找內(nèi)容

例如:lman ls | col -b > lshelp.txt

在這個(gè)例子中,col 是一個(gè)命令程序,用于過濾文本中的一些特殊控制字符;另外還使 用了“|”和“>”符號(hào),這是 Shell 環(huán)境中的兩種特殊功能應(yīng)用,分別稱為管道、重定向輸出。其 含義及作用如下所述。 ?

管道:用豎杠符號(hào)“|”表示,用于將前面命令的屏幕輸出結(jié)果作為后面命令的操作對(duì) 象(輸入)。就好像一根管道一樣,從這頭塞入內(nèi)容,從另一頭出來。 ?

重定向輸出:用大于符號(hào)“>”表示,前面的命令成功執(zhí)行以后,其屏幕輸出結(jié)果將 保存到“>”號(hào)后邊指定的文件中,而不是直接輸出到屏幕,因此稱為重定向。

5、查看當(dāng)前工作目錄:pwd

[root@localhost ~]# pwd? ? #顯示用戶當(dāng)前所在工作目錄位置

/root

6、切換工作目錄:cd (相對(duì)路徑、絕對(duì)路徑)

cd /home??? #后面跟絕對(duì)路徑,切換到home目錄

cd ./home?? #后面跟相對(duì)路徑,切換到home目錄

cd ~? ? ? ? ? ? #切換到當(dāng)前用戶的家目錄

cd? ? ? ? ? ? ? ?#切換到當(dāng)前用戶的家目錄

cd ~user? ? ?#切換到某一個(gè)用戶的家目錄,只有root才行,別的用戶只能在自己家

cd -? ? ? ? ? ? ?#切換到上一次執(zhí)行操作的目錄

cd ..? ? ? ? ? ? #切換到上一層目錄(父目錄)

絕對(duì)路徑:以根開頭的都是絕對(duì)路徑 (/home/etc)

相對(duì)路徑:以非根開頭的都是相對(duì)路徑?

7、ls——列表顯示目錄內(nèi)容(常用選項(xiàng)、可結(jié)合通配符)

1.顯示目錄中內(nèi)容,包括子目錄和文件相關(guān)屬性信息

ls【文件】【文件或目錄…】

2.常用選項(xiàng)
l、-a、-A、-d、-h、-R、–color

3.結(jié)合通配符

“?”:代表任意一個(gè)字符,且至少一個(gè)

“*”:代表任意數(shù)個(gè)字符,可以是0個(gè)或者1個(gè)或者多個(gè)

4.ls的常用選項(xiàng)

-l #將文件信息屬性詳細(xì)列出,通常直接使用ll,因?yàn)樵O(shè)置了別名
-R #遞歸顯示,比如一個(gè)目錄下還有文件,則把那個(gè)文件也一起列出
-d #查看目錄本身信息,不顯示目錄下的內(nèi)容
-i #顯示inode值
-h #友好顯示文件大小
-a #遍歷所有文件及目錄(ls內(nèi)定將文件名或目錄名稱開頭為""的視為隱藏檔,不會(huì)列出)
-A #跟-a唯一的不同是不列出當(dāng)前目錄和上一層目錄

顏色區(qū)別
白色:? ?數(shù)據(jù)文件 txt
深藍(lán)色:目錄
白色(黑色):一般文件
綠色:? ?可執(zhí)行的文件(腳本/程序)
黃色:? ?塊設(shè)備文件
紅色:? ??壓縮包
淡藍(lán)色:鏈接文件/快捷方式

8、擴(kuò)充

? ?普通文件

d 目錄文件 directory

b 塊設(shè)備文件block

p 管道文件pipe

s 套接字文件 socket

l 符號(hào)鏈接文件link

9、設(shè)置別名-alias

通過別名機(jī)制簡化常用的、比較長的命令
alias 命名別名 = 命令

alias dh=‘du-sh’


命令:
alias #查看系統(tǒng)當(dāng)前所有可用別名

alias ll=‘ls-lt’#設(shè)置別名

unalias #刪除別名

vim /root/.bash 永久生效

10、統(tǒng)計(jì)目錄及文件空間占用-du

統(tǒng)計(jì)指定目錄(或文件)所占用磁盤空間的大小

du [選項(xiàng)] [文件或目錄…]

常用選項(xiàng)

-a :統(tǒng)計(jì)磁盤空間占用時(shí)包括所有的文件,而不僅僅只統(tǒng)計(jì)目錄
-h:以更人性化的方式(默認(rèn)以KB計(jì)數(shù),但不顯示單位)顯示出統(tǒng)計(jì)結(jié)果
-s:只統(tǒng)計(jì)所占用空間總的大小,而不是統(tǒng)計(jì)每個(gè)子目錄、文件的大小

示例

統(tǒng)計(jì)出/var/log目錄所占用空間的大小
du - sh /var/log/
?

11、創(chuàng)建新目錄mkdir

mkdir /opt/sj??? #創(chuàng)建目錄,注意:父目錄必須存在

-p:創(chuàng)建一個(gè)已有的目錄會(huì)報(bào)錯(cuò),加-p則不會(huì)報(bào)錯(cuò)/當(dāng)父目錄不存在時(shí),遞歸創(chuàng)建

rmdir 刪除一個(gè)空目錄

12、創(chuàng)建空文件-touch

①文件存在:修改文件或者目錄的時(shí)間屬性,包括存取時(shí)間和更改時(shí)間。

②文件不存在:創(chuàng)建新文件

touch [文件名]

touch? [文件名] [文件名]? ?創(chuàng)建兩個(gè)文件

13、創(chuàng)建鏈接文件-ln(軟鏈接、硬鏈接)


ln 命令用于為文件或目錄建立鏈接文件(類似于 Windows 系統(tǒng)中的快捷方式)

鏈接文件包括軟鏈接硬鏈接兩種類型,其中軟鏈接又稱為符號(hào)鏈接。無論是訪問軟鏈接還是硬鏈接,與直接訪問原始文件的效果基本相同

ln -s? 創(chuàng)建軟鏈接,相當(dāng)于創(chuàng)建一個(gè)快捷方式

ln???? 創(chuàng)建硬鏈接,相當(dāng)于復(fù)制了一份副本

硬軟鏈接的區(qū)別

硬鏈接不能跨分區(qū)建立連接 無法對(duì)文件夾創(chuàng)建

刪除硬件連接可以繼續(xù)訪問硬鏈接

軟連接可以跨設(shè)備 可以支持文件夾

軟連接刪除源文件不能訪問

注:相對(duì)路徑與絕對(duì)路徑? 建議絕對(duì)路徑

例:root@localhost ~]# mkdir /bin/wx

?[root@localhost ~]# ln -s /bin/bzip2 /bin/wx/

?[root@localhost ~]# ls -lh /bin/wx/bzip2

14、復(fù)制文件或目錄-cp

將需要復(fù)制的文件或目錄(源)重建一份,并保存為新的文件或目錄...

-p:連屬性一起復(fù)制

-a:保留權(quán)限,復(fù)制軟鏈接本身,遞歸復(fù)制

-r:遞歸復(fù)制

-f:強(qiáng)制復(fù)制,不與用戶交互

-i:提醒覆蓋

cp的高級(jí)用法:cp? -v? file1.txt{,.bak}常用于備份

15、刪除文件或目錄-rm

刪除指定的文件或目錄

rm【選項(xiàng)】要?jiǎng)h除的文件或目錄

常用選項(xiàng)

-f:刪除文件或目錄時(shí)不進(jìn)行提醒,而直接強(qiáng)制刪除

-i:刪除文件或目錄時(shí)提醒用戶確認(rèn)

-r:刪除目錄時(shí)必須使用此選項(xiàng),表示遞歸刪除整個(gè)目錄樹(應(yīng)謹(jǐn)慎使用)。

常見用法:rm -rf? /? ?

刪除空目錄:rmdir

16、移動(dòng)文件或目錄/改名mv

用法:mv [文件名] [目錄名]

? ? ? ? ? ?mv [文件名] [文件名]

-i:若指定目錄已有同名文件,則先詢問是否覆蓋舊文件

-f:在 mv 操作要覆蓋某已有的目標(biāo)文件時(shí)不給任何指示

當(dāng)在同一目錄下用mv就是改名,如果是跨目錄使用mv的話就是移動(dòng),相當(dāng)于剪切的操作

17、查找命令/文件存放目錄which

which 命令用于查找 Linux 命令程序并顯示所在的具體位置,其搜索范圍主要由用戶的環(huán)境變量 PATH 決定(可以執(zhí)行“echo $PATH”命令查看),這個(gè)范圍也是 Linux 操作系統(tǒng)在執(zhí)行命令或程序時(shí)的默認(rèn)搜索路徑。

which 命令|程序名 #默認(rèn)當(dāng)查找到第一個(gè)目標(biāo)后不再繼續(xù)查找

which -a 命令|程序名 #在所有搜索路徑中查找

示例

which is

which cd

18、查找文件或目錄-find

采用遞歸方式,根據(jù)目標(biāo)的名稱、類型、大小等不同屬性進(jìn)行精細(xì)查找

不設(shè)置任何參數(shù),則 find 命令將在當(dāng)前目錄下查找子目錄與文件。并且將查找到的子目錄和文件全部進(jìn)行顯示

-name 按名稱查找:

-size 按大小查找:

-user 按文件屬主:

-type 按類型查找:普通文件(f)、目錄(d)、塊設(shè)備文件(b)、字符設(shè)備文件(c)、鏈接(l)

多條件查找

-a表示 而且(and)

-o表示 或者 (or)

設(shè)置find命令的查找條件時(shí),若需要使用或通配符,最好將文件名用雙引號(hào)括起來

find /boot -size+1024k-a/-o-name"vmlinuz*"
使用"-a”-o”組合兩個(gè)條件,前者表示兩個(gè)條件必須同時(shí)滿足,后者表示只需滿足其中任何一個(gè)條件即可
?

18.1 Find工具-name參數(shù)案列:

find /etc -name "resol*.conf"

find?? /data/??? -name?? "*.txt"????? #查找/data/目錄以.txt結(jié)尾的文件;

find?? /data/??? -name?? "[A-Z]*"???? #查找/data/目錄以大寫字母開頭的文件;

find?? /data/??? -name?? "test*"????? #查找/data/目錄以test開頭的文件;

18.2 Find工具-size參數(shù)案列

find?? /data/??? -size?? +1M????????????? #查文件大小大于1Mb的文件;

find?? /data/??? -size? ?10M?????????????? #查文件大小為10M的文件;

find?? /data/??? -size?? -1M???????????? #查文件大小小于1Mb的文件;

-size +4M??? 表示4M 以上?? 不包括 4M

-size? 4M??? 表示3M? 到4M? 且不包括3M??

-size -4M??? 表示3M? 以內(nèi)? 包括3M

1G? 1024 代表1023M - 1024M? 不包括1023M

18.3Find工具-type參數(shù)案列:

find?? /data/??? -type d? ? ? ? ? ?#查找/data/目錄下的文件夾;

find?? /data/??? !?? -type?? d???? #查找/data/目錄下的非文件夾;

find?? /data/??? -type? l? ? ? ? ? ? #查找/data/目錄下的鏈接文件。

find? /data/ -type d|xargs chmod 755 -R #查目錄類型并將權(quán)限設(shè)置為755;

find? /data/ -type f|xargs chmod 644 -R #查文件類型并將權(quán)限設(shè)置為644;

18.4 查找存在的用戶的文件

find /home -user 用戶名

find /home -user 用戶名? -group 組名

擴(kuò)展? xargs

可以和管道配合

find ./ -maxdepth 1 -type f -print0 | xargs -0 ls -lh-atime? -- 訪問時(shí)間

Linux中日志放在/var/log sylog

?-mtime? -- 文件內(nèi)容修改時(shí)間

?-ctime? -- 文件屬性修改時(shí)間?

? ctime?? ##以天為單位

? cmin??? ##以分鐘為單位?

find ./ -name "syslog.*.gz" -mtime -5 -exec ls -lh {} \;????

# +5是五天以前????? #-5天以內(nèi)

在當(dāng)前目錄下(包含子目錄),刪除所有txt文件

find ./ -name "*.txt" -exec rm {} \;

在當(dāng)前目錄下(包含子目錄),查找所有txt文件并找出含有字符串"bin"的行

find ./ -name "*.txt" -exec grep "bin" {} \;

原文鏈接:https://blog.csdn.net/weixin_71438279/article/details/125477378

欄目分類
最近更新