Linux 基礎

鞏固基礎,砥礪前行 。
只有不斷重復,才能做到超越自己。
能堅持把簡單的事情做到極致,也是不容易的。

linux的目錄結構

linux的文件系統采用樹狀的目錄結構,在此結構的最上層是根目錄“/”,
然后在此目錄下再創建其他的目錄。

目錄的具體介紹:
bin:usr/bin usr/local 是Binary縮寫。存放最常用的命令 *
sbin:存放管理員使用的系統管理程序
home:存放普通用戶的主目錄,在linux種每個用戶都有一個自己的目錄,
一般該目錄名是以用戶的帳號命名的 *
root:系統管理員目錄 *
boot:存放的是啟動linux時使用的一些核心文件,包括一些鏈接文件以及鏡像文件 *
proc:這是一個虛擬目錄,它是系統內存的映射,訪問這個目錄來獲取系統信息
srv:service縮寫,該目錄存放的是一些服務啟動后需要讀取的數據
sys:這是lunux2.6 內核的一個很大的變化,該目錄下安裝了2.6內核種出現的一個文件系統
tem:存放臨時文件
dev:類似于windows的設備管理,把所有的硬件用文件的形式存儲
media:linux系統會自動識別一些設備,如:U盤等,如果識別之后,linux就會把識別到的目錄掛載到這個目錄下
mnt:系統提供了該目錄是為了讓用戶臨時掛載別的文件系統,我們可以將外部的存儲掛載在
/mnt/上,然后進入該目錄就可以查看這里的內容了。
opt:給主機額外安裝軟件所擺放的目錄,如安裝oracle數據庫就可以放在該目錄下
usr/local:這是另一個給 主機額外安裝軟件的目錄,一般是通過編譯源碼方式暗轉的程序
var:這個目錄種存放著不斷擴充的東西,習慣將經常被修改的目錄放在這個目錄下,包括各種日志文件
selinux: 這是一個安全子系統,他能控制程序只能訪問特定文件

linux分區

原理介紹

		1)linux來說無論有幾個分區,分給那個目錄使用,他歸根結底就只有一個根目錄,一個獨立且唯一的文件結構,linux中每隔分區都是用來組成文件系統的一部分2)linux采用一種叫 載入 的處理方法,它的整個文件系統中包含了一整套的文件和目錄,且將一個分區和一個目錄練習起來,這時,要載入的一個分區將使它的存儲空間在一個目錄下獲得硬盤說明1)Linux硬盤分ide硬盤和scsi硬盤,目前基本上都是scsi硬盤2)對ide硬盤,驅動器標識符為“hdx~”,其中hd表明分區所在設備的類型,這里時指ide硬盤了。"x"為盤號,(a為基本盤,b為基本從屬盤,c為輔助主盤,d為輔助從屬盤),"~"代表分區,前四個分區使用數字1-4表示,他們術主分區或者擴張分區,從5開始就是邏輯分區,case:hda3第一個ide硬盤上的第三個主分區或者擴展分區,hdb2表示第二個ide硬盤上的第二個主分區或者擴張分區3)對于scsi硬盤則表示為sdx~,scsi硬盤時使用sd來表示分區所在的設備類型的。其余則和ide硬盤的表示方法一樣使用lsblk指令來查看系統的分區情況lsblklsblk -f 查看系統的分區和掛載情況

如何新增一塊硬盤

	1)虛擬機添加硬盤2)分區 fdisk /dev/sdb1分區命令 fdisk /dev/sdb開始對/sdb分區m:顯示命令列表p:顯示磁盤分區 n:新增分區d:刪除分區w:寫入并退出說明:開始分區后,輸入n,新增分區,然后選擇p,分區類型為主分區,兩次回車默認剩余全空間。最后輸入w寫入并退出,若不保存則退出輸入q。3) 格式化 mkfs - ext4 /dev/sdb1ext4 時分區類型4)掛載 創建掛載點 /home/newdisk ,掛載 mount /dev/sdb1	/home/newdiskmount 設備名稱 掛載目錄unmount 設備名稱 掛載目錄5)設置永久掛載vim /etc/fstab/dev/sdb1  /home/newdisk ext4 defaule  0 0添加完成后,執行mount -a 即刻生效

硬盤情況查詢

	1)查詢系統整體磁盤使用情況基本語法df -hdf -lh目錄結構文件系統  磁盤大小  使用了多少  空閑多少 使用率 掛載點2)查詢指定目錄的磁盤占用情況du -h 目錄查詢指定目錄磁盤占用情況,默認為當前目錄-s 指定目錄占用大小匯總-h 帶計量單位-a 含文件--max-depth=1 子目錄深度-c 列出明細的同時增加匯總值case1:查詢/opt目錄下的磁盤占用情況du -ach --max-depth=1 /optcase2:統計/home文件夾下文件的個數ls -l /home |grep "^-" | wc -lcase3:統計/home文件夾下目錄的個數ls -l /home |grep "^d" | wc -lcase4:統計/home文件夾下目錄的個數(包括子文件夾)ls -lR /home |grep "^d" | wc -lcase5:統計/home文件夾下文件的個數(包括子文件夾)ls -lR /home |grep "^-d" | wc -lcase6:以樹狀顯示目錄結構tree如果沒有則,安裝 yum install tree

base

vi 和vim 編輯器
所有的linux系統都會內建 vi文本編輯器
vim具有程序編輯的能力,可以看作是vi的增強版本,可以主動的以字體顏色辨別語法的正確性。
方便程序設計,代碼補充,編譯以及錯誤跳轉等方便編程的功能特別豐富

shutdown
showdown -h now
shutdown -h 1
shutdown -r now

halt
直接關機
reboot

syn
把內存中的數據同步到硬盤
su - 用戶名

logout

常用指令

用戶管理

usradd xm
usradd -d /home/xm xm
passwd xm
usrdel xm
刪除用戶,但是保留家目錄
usrdel -r xm
刪除用戶以及用戶主目錄
id root
查詢uid gid 組 信息
su - 用戶名

組管理

groupadd police
groupdel police

usradd -g police xm
id xm
usrmod -g 組名 用戶名
修改用戶組

etc/passwd 文件
用戶user配置文件,記錄用戶的各種信息
每行的含義:用戶名:口令:用戶標識號:組號:解釋性描述:主目錄:登錄shell
etc/shadow 文件
存放口令的配置文件
每行的含義:登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:失效時間:標志
etc/group 文件
存放組信息
每行含義:組名:口令:組標志:組內用戶列表

man ls

help cd

pwd

ls
ls -l
ls -la (顯示文件以及隱藏文件)

cd

mkdir
mkdir XX
mkdir -p /usr/local/a/b/c

rmdir
刪除文件夾命令(文件要是一個空目錄)
rmdir /usr/local/a (a是一個空目錄)
rmdir -rf /usr/local/a (強制刪除)

touch
創建空文件
touch aa.txt
rm -f aa.txt

cp
cp source dest
cp /usr/local/a.txt /usr/local/p/a.txt
cp -r /usr/local/aa /usr/local/p/bb 復制文件夾

rm
rm -f /usr/local/aa.txt
rm -rf /user/local/dicdemo

mv
移動文件或者重命名
mv /usr/local/aa.txt /usr/local/bb.txt 重命名
mv /usr/local/aa.txt /usr/local/cc 系統文件

cat
cat /usr/local/aa.txt
cat -n /usr/local/aa.txt 顯示行號

more

less

會覆蓋之前的文件

追加
ls -al >aa.txt
ls -al >>aa.txt

echo
輸出內容到控制臺
echo $PATH

head
用于顯示文件的開頭部分,默認情況下head指令顯示文件前10行內容
head /usr/local/aa.txt
head -n 5 /usr/local/aa.txt

tail
顯示尾部文件(10行)
tail 文件
tail -n 5 文件
tail -f 文件

In
軟連接
In -s /root linlToRoot
ls
進入root目錄
rm -f linlToRoot

history

日期
date
date 顯示當前日期
date +%Y 顯示年份
date +%m
date +%d
date +%Y-%m-%d %H:%M:%s

date -s "" 設定時間

cal
查看日歷
cal 2020

find
find /home - name aa.txt 按照名稱查詢
find /opt - user xm 按照用戶查詢
find /home - size -20M

locate
基于數據庫指令快速定位文件,第一次運行前需要使用updatedb指令

grep |
cat /usr/local/aa.txt | grep -n 哈哈
-n 顯示行號
-i 忽略大小寫

壓縮

gzip、gunzip
gzip aa.txt (不會保留原來的文件,壓縮成為.gz文件)
gunzip aa.txt.gz

zip 、 unzip (zip)
zip -r 壓縮后的文件名 路徑
zip 壓縮后的文件 文件名

unzip -d 解壓后放在哪里 壓縮文件名

tar (.tar.gz)
tar -zcvf 壓縮后的文件名 文件1 文件2……
tar -zxvf 壓縮后的文件名 解壓目錄

組管理和權限管理

所有者、所在組、其他組、改變用戶所在組

ls -ahl 查看文件的所有者

groupadd police
usradd -g police xm
passwd 123456
su xm
touch aa.txt 
ls -ahl

修改文件所有者:

修改文件所有者:	
chown 用戶名 文件名 修改文件所有者chown root aa.txtls -ahlid xmchown newowner:newgroup 文件名 改變用戶的所在組和所有者- R 如果是目錄 則是其下的所有子文件或者目錄遞歸生效case:1)將home/abc.txt 文件的所有者調整為tomchown tom /home/abc.txt2)將home下kk目錄的所有文件或者目錄的所有者都調整為tomchown -R tom /home/kk
chgrp 組名 文件名groupadd hahachgrp haha aa.txt
case:1)將home/abc.txt 文件的所在組修改為policchgrp police /home/abc.txt2)將home下kk目錄的所有文件或者目錄的所在組都調整為policechgrp -R police /home/kk

修改用戶的所在組:

usermod -g 組名 用戶名 改變用戶所在組
usermod -d 目錄名 用戶名 改變用戶登錄的初始目錄

權限的基本介紹

ls -l 命令
-rwxrw-r-- 1 root root 1212 時間0到9位 -rwxrw-r-- 說明
第0位確定文件的類型:- 普通文件 d 文件夾 l 軟連接
第1-3位:文件所有者所擁有的權限
第4-6位:文件所在組所擁有的權限
第7-9位:其他組所擁有的權限

rwx權限詳解

	rwx 作用到目錄rwx 作用到文件夾

修改權限

chmod 命令,可以修改文件或者目錄的權限

第一種方式
第一種方式:+ - = 
u:所有者 g:所在組 o:其他人 a:所有人
1)chmod u=rwx,g=rx,o=x  文件目錄名稱
2)chmod o+w 文件目錄名
3)chmod a-x 文件目錄名
case:
1.給abc文件的所有者 讀寫執行  ,所在組 執行 ,其他 讀執行
chmod u=rwx,g=x,o=r abc
chmod u+rwx g+x o+r abc2.給abc文件所有者除去 執行權限,新增 組寫權限
chmod u-x g+w abc
第二種方式 通過數組變更權限
	規則r=4 w=2 x=1rwx=4+2+1=7chmod u=rwx,g=rx,o=x aa.txtchmod 751 aa.txt

linux運行級別說明

標題linux運行級別說明:

0:關機
1:單用戶
2:多用戶狀態沒有網絡服務
3:多用戶狀態有網絡服務
4:系統未使用保留給用戶
5:圖像界面
6:系統重啟

常用運行級別是3和5
要修改默認的運行級別可修改文件:/etc/inittab 的id:5 :initdefaule:num

case:
忘記root的密碼,怎么找回 ?

crond 任務調度

crond 任務調度

定時的調度腳本或者代碼 通過crontab來執行
基本語法:
crontab [選項]-e 編輯crontab定時任務-l 查詢crontab任務-r 刪除當前用戶的所有crontab任務

快速入門:

任務的要求:
設置任務調度文件:/etc/crontab
設置個人任務調度,執行 crontab -e 命令輸入任務到調度文件中case:*/1 * * * * ls -l /etc/ > /tmp/aa.txt每分鐘執行 ls -l /etc/>/tmp/aa.txt 

參數說明:

占位符說明:
第1個* 第幾分鐘
第2個* 一天中的第幾小時
第3個* 一個月中的第幾天
第4個* 一年當中的第幾個月
第5個* 一年當中的第幾星期特殊符號說明:* 代表任何時間, 代表不連續的時間 0 8 12 * * * * 執行- 代表連續的時間*/n 代表每隔多久執行一次

case:

45 22 * * * 在22點45分中執行命令
0 17 * * 1  每周1的0點和 17點執行命令
0 5 1,15 ** 1號和15號的 5點執行命令
40 4 * * 1-5 每周1到周五的4點40執行命令
*/10 4 * * * 每天4點每隔10分鐘執行一次命令
0 0 1,1/15 * 1 1號和15號,每周1的0點0分都會執行命令,注意 周幾和幾號最薄不要同時出現

練習:

1)每隔1分鐘,就將當前日期信息追加到/tmp/mydate文件中a. 先編寫一個testcron.sh文件date >> /tmp/mydateb. 授權chmod 744 /home/testcron.sh c. crontab - e*/1 * * * * /home/testcron.sh 備份數據庫
/usr/local/mysql/bin/mysqldump -uroot -proot testdb > /tmp/mydb.bak

linux 安裝redis

1. 拷貝redis安裝包到對應的目錄下。解壓

在這里插入圖片描述

2.make

在這里插入圖片描述### 3. make install在這里插入圖片描述

4.到 /usr/local/bin

在這里插入圖片描述

5. 修改redis 為后臺啟動

在這里插入圖片描述

6.啟動redis ,使用 redis-cli 進入,測試

在這里插入圖片描述

7.關閉 redis

redis-cli shutdown
redis-cli -p 6379 shutdowm
在這里插入圖片描述

linux 安裝nginx

安裝nginx 需要的包

pcre
openssl
zlib
nginx

yum install wget

1.首先安裝 pcre

(1)wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
(2)進入到 pcre-8.37 目錄
./configure
(3) make
(4)make install

2. 安裝 openssl zlib

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

3.安裝nginx

解壓nginx
進入到安裝目錄
./configure
make這里有報錯
make: *** No rule to make target `build', needed by `default'. Stop.
解決辦法
方法一:
網絡上說 : 更新yum
我更新yum之后,然后重新解壓,進入目錄,./configure ;make && make install 依舊有問題;
方法二:
出現此種情況,是linux系統沒有安裝先決條件
 1GCC——GNU編譯器集合(GCC可以使用默認包管理器的倉庫(repositories)來安裝,包管理器的選擇依賴于你使用的Linux發布版本,包管理器有不同的實現:yum是基于Red
Hat的發布版本;apt用于DebianUbuntu;yast用于SuSE Linux等等。)RedHat中安裝GCC:yum install gccUbuntu中安裝GCC:apt-get install gcc2PCRE庫(Nginx編譯需要PCREPerl Compatible Regular
Expression),因為NginxRewrite模塊和HTTP核心模塊會使用到PCRE正則表達式語法。這里需要安裝兩個安裝包pcre和pcre-devel。第一個安裝包提供編譯版本的庫,而第二個提供開發階段的頭文件和編譯項目的源代碼,這正是我們需要的理由。)RedHat中安裝PCRE:yum install pcre pcre-develUbuntu中安裝PCRE:apt-get install libpcre3 libpcre3-dev3、zlib庫(zlib庫提供了開發人員的壓縮算法,在Nginx的各種模塊中需要使用gzip壓縮。如同安裝PCRE一樣,同樣需要安裝庫和它的源代碼:zlib和zlib-devel。)RedHat中安裝zlib:yum install zlib zlib-develUbuntu中安裝zlib:apt-get install zlib1g zlib1g-dev4OpenSSL庫(在Nginx中,如果服務器提供安全網頁時則會用到OpenSSL庫,我們需要安裝庫文件和它的開發安裝包(openssl和openssl-devel)。)RedHat中安裝OpenSSL:yum install openssl openssl-develUbuntu中安裝OpenSSL:(注:Ubuntu14.04的倉庫中沒有發現openssl-dev):apt-get install openssl openssl-dev

這種方法解決掉了 我上面的問題
環境問題有很多情況。

4. 查看nginx 安裝在那個目錄下

whereis nginx

查看是否啟動成功默認端口 是 80

Linux 安裝 jdk

1. 下載安裝包

tar -zxvf XXX

2. 重命名文件,刪除jar

在這里插入圖片描述

3. 找到etc/profile 配置以下內容

export JAVA_HOME=/opt/jdk/jdk8  #jdk安裝目錄export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATHexport JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/binexport PATH=$PATH:${JAVA_PATH}

在這里插入圖片描述

4. 環境變量生效命令

source /etc/profile

5. Java -version在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/35942.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/35942.shtml
英文地址,請注明出處:http://en.pswp.cn/news/35942.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【算法——雙指針】LeetCode 1089 復寫零

千萬不要被這道題標注著“簡單”迷惑了,實際上需要注意的細節很多。 題目描述: 解題思路: 正序遍歷,確定結果數組的最后一個元素所在的位置;知道最后一個元素的位置后倒序進行填充。 先找到最后一個需要復寫的數 先…

javaee dom4j讀取xml文件

引入jar包 dom4j-1.6.1.jar 創建xml文件 <?xml version"1.0" encoding"UTF-8"?> <books><book id"1"><title ID"t1">背影</title><price>88</price><author>三毛</author>…

Excel表格制作,快速提升效率好方法!

“作為一個剛開始工作的職場新人&#xff0c;每天要做各種不同的表格&#xff0c;真的讓我很崩潰&#xff0c;感覺我對這些表格制作一點都不了解&#xff0c;Excel表格制作有什么比較好的方法嗎&#xff1f;” Excel作為一款廣泛應用于各個領域的管理和分析工作&#xff0c;給我…

【STM32】FreeRTOS消息隊列和信號量學習

一、消息隊列&#xff08;queue&#xff09; 隊列是一種用于實現任務與任務之間&#xff0c;任務與中斷之間消息交流的機制。 注意&#xff1a;1.數據的操作是FIFO模式。 2.隊列需要明確數據的大小和隊列的長度。 3.寫和讀都會出現堵塞。 實驗&#xff1a;創建一個消息隊列…

解決 Oracle 數據庫中表被鎖問題的方案和方法

我們經常會遇到表被鎖的情況&#xff0c;這可能會嚴重影響數據庫的性能和可用性。我將與大家分享如何識別、分析和解決這些問題&#xff0c;以及如何使用特定的 SQL 查詢來執行解鎖操作。 了解表鎖的原因 首先&#xff0c;讓我們來了解一下導致表被鎖的常見原因。長時間運行的…

(四)Unity開發Vision Pro——參考文檔

4.參考文檔 4.1 支持的功能和組件 4.1.1 支持的 Unity 功能和組件 大多數 Unity 組件無需修改即可在此平臺上運行 - 包括大多數自定義 MonoBehaviours、動畫邏輯、物理、輸入處理、資產管理、AI 等。然而&#xff0c;需要渲染的組件需要特殊的支持。因此&#xff0c;一些組件…

qt5.15.2 使用mysql8.1

報錯&#xff1a; QMYSQL driver not loaded 報錯&#xff1a;無 QMYSQL 使用 QStringList drivers QSqlDatabase::drivers(); //獲取現在可用的數據庫驅動 foreach(QString driver, drivers) qDebug() << driver; “QSQLITE” “QMARIADB” “QMYSQL” “QMYSQL3” “…

Linux常用命令——dmidecode命令

在線Linux命令查詢工具 dmidecode 在Linux系統下獲取有關硬件方面的信息 補充說明 dmidecode命令可以讓你在Linux系統下獲取有關硬件方面的信息。dmidecode的作用是將DMI數據庫中的信息解碼&#xff0c;以可讀的文本方式顯示。由于DMI信息可以人為修改&#xff0c;因此里面…

網絡編程的使用

文章目錄 基礎代碼URL類進行傳輸編碼解碼 協議TCPUDPhttp PORT端口協議的實現TCPUDP 模擬服務器 基礎代碼 最后一個是&#xff1a;只要再timeout時間內連接上就是true URL類 導了一個common-iojar包&#xff0c;那個IOUtils就是那個里面的工具類 進行傳輸編碼解碼 協議 TC…

多線程:線程池

線程池 提前創建多個線程放入線程池中&#xff0c;使用時直接獲取&#xff0c;使用完直接放入池中&#xff1b;可以避免頻繁創建銷毀&#xff0c;實現重復利用&#xff0c;類似生活中的公共交通工具。好處&#xff1a;提高相應速度&#xff1b;降低資源消耗&#xff1b;便于線…

【Spring Cloud +Vue+UniApp】智慧建筑工地平臺源碼

智慧工地源碼 、智慧工地云平臺源碼、 智慧建筑源碼支持私有化部署&#xff0c;提供SaaS硬件設備運維全套服務。 前言&#xff1a;互聯網建筑工地&#xff0c;是將互聯網的理念和技術引入建筑工地&#xff0c;從施工現場源頭抓起&#xff0c;最大程度的收集人員、安全、環境、材…

微信小程序調用map數據 并在wxml中對數組進行截取的操作

wxs文件的位置如圖 實現數組截取 只保留五張圖片 <wxs module"filter" src"./slicefunc.wxs"></wxs> <view class"wrap"><view class"search-box" bindtap"toSearch"><view class"v1"…

【幾個python虛擬環境會遇到的問題】

幾個python虛擬環境會遇到的問題 twine is not recognized as an internal or external command,operable program or batch file.setup命令不報錯但不起作用pipreqs is not recognized as an internal or external command,operable program or batch file. ‘twine’ is not …

快遞管理系統springboot 寄件物流倉庫java jsp源代碼mysql

本項目為前幾天收費幫學妹做的一個項目&#xff0c;Java EE JSP項目&#xff0c;在工作環境中基本使用不到&#xff0c;但是很多學校把這個當作編程入門的項目來做&#xff0c;故分享出本項目供初學者參考。 一、項目描述 快遞管理系統springboot 系統有1權限&#xff1a;管…

11. Docker Swarm(二)

1、前言 上一篇中我們利用Docker Swarm搭建了基礎的集群環境。那么今天我們就來驗證以下該集群的可用性。上一篇的示例中&#xff0c;我創建了3個實例副本&#xff0c;并且通過訪問http://192.168.74.132:8080得到我們的頁面。 2、驗證高可用 1&#xff09;我們可以通過以下命…

13個頂級AI代碼助手排行榜【2023最新】

AI代碼助手&#xff08;AI Coding Assistant&#xff09;是一種利用人工智能幫助開發人員更快、更準確地編寫代碼的軟件工具。 它可以通過根據提示生成代碼或在你實時編寫代碼時建議自動完成代碼來實現此目的。 以下是AI代碼助手可以做的一些事情&#xff1a; 與你使用的流行代…

YOLOv5可視化界面

Pyside6可視化界面 安裝Pyside6 激活之前的虛擬環境yolov5 在該環境的終端輸入以下命令 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyside6輸入where python找到當前使用的Python的路徑 找到該路徑下的designer.exe文件&#xff08;/Lib/site-packages/PySi…

布置Zabbix監控

一、在 Web 頁面中添加 agent 主機 1.1打開Zabbix的Web頁面 2.2在 Web 頁面中添加 agent 主機 二、在 Web 頁面創建自定義監控項模板 2.1創建模版

《Java面向對象程序設計》學習筆記——第 8 章 設計模式

?專欄&#xff1a;《Java面向對象程序設計》學習筆記 第 8 章 設計模式 一個好的設計系統往往是易維護、易擴展、易復用的。 8.1 設計模式簡介 8.1.1 什么是設計模式 一個設計模式 (pattern) 是針對某一類問題的最佳解決方案&#xff0c;而且己經被成功應用于許多系統的設…

[QT/C++]如何得知鼠標事件是由觸摸事件轉換而來的,使得鼠標觸摸事件分離

依據來源&#xff1a;https://doc.qt.io/qt-5/qml-qtquick-mouseevent.html 具體是在event事件或者mouse系列事件中捕獲到鼠標事件后&#xff0c;用如下代碼判斷鼠標事件是否由觸摸事件轉換而來的 if(mouseEvent->source()Qt::MouseEventSynthesizedBySystem){qDebug()<&…