adb命令

1. 常用命令:

adb devices #查看連接設備adb -s cf27456f shell # 指定連接設備使用命令adb install test.apk # 安裝應用adb install -r demo.apk #安裝apk 到sd 卡:adb uninstall cn.com.test.mobile #卸載應用,需要指定包adb uninstall -k cn.com.test.mobile #卸載app 但保留數據和緩存文件adb shell pm list packages #列出手機裝的所有app 的包名adb shell pm list packages -3 #列出除了系統應用的第三方應用包名adb shell pm clear cn.com.test.mobile #清除應用數據與緩存adb shell am start -ncn.com.test.mobile/.ui.SplashActivity #啟動應用adb shell dumpsys package #包信息Package Informationadb shell dumpsys meminfo #內存使用情況Memory Usageadb shell am force-stop cn.com.test.mobile #強制停止應用adb logcat #查看日志adb logcat -c #清除log 緩存adb reboot #重啟adb get-serialno #獲取序列號adb shell getprop ro.build.version.release #查看Android 系統版本adb shell top -s 10 #查看占用內存前10 的appadb push <local> <remote> #從本地復制文件到設備adb pull <remote> <local> #從設備復制文件到本地adb bugreport #查看bug 報告adb help #查看ADB 幫助

2.1 連接設備

adb [-d|-e|-s <serialNumber>] <command>

連接指定設備

參數:

-d 指定當前唯一通過USB 連接的Android 設備為命令目標

-e 指定當前唯一運行的模擬器為命令目標

-s <serialNumber> 指定相應serialNumber 號的設備/模擬器為命令目標

command 為所需對設備執行的命令

示例:

$adb devices
List of devices attached
cf263b7f device
emulator-5554 offline
192.168.1.6:5555 device
$adb -s cf263b7f #連接cf264b8f 設備

adb devices 查看已連接的設備信息, 上面已經連接3臺設備。

2.2 查看信息

2.2.1 查看版本設備

adb version?查看adb 版本信息

adb devices?查看adb 連接設備

示例:

$adb devices
List of devices attached
1226959f device
3426422f offline

注意:offline 表示設備未連接成功或無響應,device 設備已連接

adb shell getprop ro.product.model?查看設備型號

adb get-serialno?獲取設備序列號

adb bugreport?查看bug 報告

adb logcat?查看日志

adb shell wm size?查看屏幕分辨率

adb shell wm density?查看屏幕密度

2.2.2 查看應用信息

adb shell pm list packages?列出手機裝的所有app 的包名

adb shell pm list packages -s?列出系統應用的所有包名

adb shell pm list packages -3?列出除了系統應用的第三方應用包名

adb shell pm list packages | find "test" win?列出手機裝帶有的test的包

adb shell pm list packages | grep ‘test’ linux?列出手機裝帶有的test的包

adb shell cat?/sys/class/net/wlan0/address?獲取MAC 地址, 根據系統版本參數可能不同

adb shell getprop ro.build.version.release?查看Android 系統版本

adb shell dumpsys activity services [<packagename>]?查看正在運行的Services

<packagename> 參數不是必須的,指定<packagename> 表示查看與某個包名相關的Services,不指定表示查看所有Services。

<packagename> 不一定要給出完整的包名,比如運行adb shell dumpsys activity services org.zhihu,那么包名org.zhihu.demo1、org.zhihu.demo2 和org.zhihu 等相關的Services 都會列出來。

2.3 app 安裝和卸載

2.3.1 app 安裝:

adb install <apkfile>?參數apkfile 為.apk 文件名稱

adb install -r?test.apk?保留數據和緩存文件,重新安裝apk

adb install -s?test.apk?安裝apk 到sd 卡

2.3.2 app 卸載

adb uninstall <package>?參數package 為軟件包名稱

示例:

$adb uninstall cn.com.test.mobile#  卸載app 但保留數據和緩存文件
$adb uninstall -k ccn.com.test.mobile 

2.4 啟動停止服務

adb start-server

啟動adb 服務,基本不會用到,因為只要設備連接正確,會自動啟動adb server

adb kill-server

停止adb server

adb -P <port> start-server

指定adb server 的網絡端口port (默認為5037)啟動服務

2.5 與應用交互

adb shell pm clear <packagename>

清除應用數據與緩存

示例:

$adb shell pm clear cn.com.test.mobile

adb shell am force-stop <packagename>

強制停止應用

示例:強制停止微信

$adb shell am force-stop com.tencent.mm

adb shell am <command>

command 命令詳解

command 用途
start [options] <INTENT> 啟動 <INTENT> 指定的 Activity
startservice [options] <INTENT> 啟動 <INTENT> 指定的 Service
broadcast [options] <INTENT> 發送 <INTENT> 指定的廣播
force-stop <packagename> 停止 <packagename> 相關的進程

<INTENT> 參數很靈活,和寫 Android 程序時代碼里的 Intent 相對應,用于決定 intent 對象的選項如下:

-a <ACTION> 指定 action,如android.intent.action.VIEW
-c <CATEGORY> 指定 category,如android.intent.category.APP_CONTACTS
-n <COMPONENT> 指定完整 component 名,用于明確指定啟動哪個 Activity,如
com.example.app/.ExampleActivity

2.5.1 啟動 Activity

adb shell am start [options] <INTENT>

示例:

 #指定完整 component 名,用于明確指定啟動哪個Activity
$adb shell am start -n <COMPONENT>  
如: #表示調起微信主界面
$adb shell am start -n com.tencent.mm/.ui.LauncherUI  

2.5.2 啟動 Service

adb shell am startservice [options] <INTENT>

示例: 表示調起微信的某 Service。

$adb shell am startservice -n com.tencent.mm/.plugin.accountsync.model.AccountAuthenticatorService

2.5.3 發送廣播

可以向所有組件廣播,也可以只向指定組件廣播。

adb shell am broadcast [options] <INTENT>

示例:

#向所有組件廣播 BOOT_COMPLETED (開機廣播)
$adb shell am broadcast -a android.intent.action.BOOT_COMPLETED   
#如:只向 org.mazhuang.boottimemeasure/.BootCompletedReceiver 廣播 BOOT_COMPLETED:
$adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n org.mazhuang.boottimemeasure/.BootCompletedReceiver

系統預定義的廣播:

Android 系統預定義廣播

2.5.4 強制停止應用

adb shell am force-stop <packagename>

示例:

 # 查詢出包名
$adb shell pm list packages 
.....
# 強制停止微信
$adb shell am force-stop com.tencent.mm

2.6 文件管理

2.6.1 復制設備里的文件到電腦

adb pull <設備里的文件路徑> [電腦上的目錄]

示例:

$adb pull /sdcard/abc.mp4  ~/tmp/
小技巧:設備上的文件路徑可能需要 root 權限才能訪問,如果你的設備已經 root 過,可以先使用 adb shell 和 su 命令在 adb shell 里獲取 root 權限后,先 cp /path/on/device /sdcard/filename 將文件復制到 sdcard,然后 adb pull /sdcard/filename /path/on/pc。

2.6.2 復制電腦里的文件到設備

adb push <電腦上的文件路徑> <設備里的目錄>

示例:

$adb push  e:/ss.au3  /data/local/tmp/
小技巧:設備上的文件路徑普通權限可能無法直接寫入,如果你的設備已經 root 過,可以先 adb push /path/on/pc /sdcard/filename,然后 adb shell 和 su 在 adb shell 里獲取 root 權限后,cp /sdcard/filename /path/on/device

2.7 使用ADB命令模擬按鍵/輸入

adb shell input keyevent <keycode>

keycode位操作參數,不同的 keycode 能實現不同的功能

完整的功能見:https://developer.android.com/reference/android/view/KeyEvent.html

keycode 能實現不同的功能,對應的編碼如下:

keycode 列表

示例:

$adb shell input keyevent 26  #電源鍵
$adb shell input keyevent 82  #菜單鍵
$adb shell input keyevent 3  #HOME 鍵
$adb shell input keyevent 4 #返回鍵
$adb shell input keyevent 24 #增加音量
$adb shell input keyevent 25 #降低音量
$adb shell input keyevent 164 #靜音
$adb shell input keyevent 85  #播放/暫停
$adb shell input keyevent 86 #停止播放
$adb shell input keyevent 87 #播放下一首
$adb shell input keyevent 88 #播放上一首
$adb shell input keyevent 126 #恢復播放
$adb shell input keyevent 127 #暫停播放
$adb shell input keyevent 224 #點亮屏幕
$adb shell input keyevent 223 #熄滅屏幕
$adb shell input swipe 300 1000 300 500  #滑動解鎖,向上滑動手勢解鎖
#參數 300 1000 300 500 分別表示起始點x坐標 起始點y坐標 結束點x坐標 結束點y坐標 
$adb shell input text hello #焦點處于某文本框時輸入文本

2.8 查看日志

2.8.1 Android 日志

[adb] logcat [<option>] ... [<filter-spec>] ...

按級別過濾日志

按某級別過濾日志則會將該級別及以上的日志輸出,Android 日志的優先級如下:

V —— Verbose(最低,輸出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不輸出)

示例:輸出W之上的日志,W,E,F,S

$adb logcat *:W

按 tag 和級別過濾日志

<filter-spec> 可以由多個 <tag>[:priority] 組成

示例:輸出 tag ActivityManager 的 I 以上級別日志,輸出tag MyApp的D 以上級別日志,及其它 tag 的 S 級別日志(即屏蔽其它 tag 日志)。

$adb logcat ActivityManager:I MyApp:D *:S

日志格式

adb logcat -v <format>

指定日志輸出格式

示例:

$adb logcat -v <format>  指定日志輸出格式
$adb logcat -v brief   #默認格式,<priority>/<tag>(<pid>): <message>
$adb logcat -v process #<priority>(<pid>) <message>
$adb logcat -v tag  #<priority>/<tag>: <message>
$adb logcat -v raw  #<message>
$adb logcat -v time  #<datetime> <priority>/<tag>(<pid>): <message>
$adb logcat -v threadtime #<datetime> <pid> <tid> <priority> <tag>: <message>
$adb logcat -v long  #[ <datetime> <pid>:<tid> <priority>/<tag>:] <message>
$adb logcat -v long ActivityManager:I *:S  #指定格式可與上面的過濾同時使用

清空日志

$adb logcat -c

2.8.2 內核日志

$adb shell dmesg  

查看內核日志

2.9 查看設備信息

2.9.1 型號

$adb shell getprop ro.product.model

2.9.2 電池狀況

$adb shell dumpsys battery

2.9.3 屏幕分辨率

$adb shell wm size

2.9.4 屏幕密度

$adb shell wm density

2.9.5 顯示屏參數

$adb shell dumpsys window displays

2.9.6 android_id

$adb shell settings get secure android_id

2.9.7 IMEI

$adb shell dumpsys iphonesubinfo
#而在 Android 5.0 及以上版本里這個命令輸出為空,得通過其它方式獲取了(需要 root 權限):
adb shell
su
$service call iphonesubinfo 1

2.9.8 Android 系統版本

$adb shell getprop ro.build.version.release

2.9.9 IP 地址

$adb shell ifconfig | find “Mask”
$adb shell ifconfig wlan0 #設備連著 WiFi,可以使用如下命令來查看局域網 IP
$adb shell netcfg # 上面兩個無結果可以用這個,查看網絡連接狀態

2.9.10 Mac 地址

$adb shell cat /sys/class/net/wlan0/address # 設備不同可能地址不同

2.9.11 CPU 信息

$adb shell cat /proc/cpuinfo

2.9.12 內存信息

$adb shell cat /proc/meminfo

2.9.13更多硬件與系統屬性

$adb shell cat /system/build.prop

adb shell getprop <屬性名>

也可以

$adb shell cat /system/build.prop | grep ro.product.cpu.abi
$adb shell cat /system/build.prop | find “ro.product.cpu.abi”

2.10 修改設置

修改設置之后,運行恢復命令仍然不太正常,可以運行 adb reboot 重啟設備或手動重啟。

修改設置的原理主要是通過 settings 命令修改 /data/data/com.android.providers.settings/databases/settings.db 里存放的設置值。

2.10.1分辨率

adb shell wm size?480x1024?#將分辨率修改為 480px * 1024px

adb shell wm size reset?#恢復原分辨率

2.10.2屏幕密度

adb shell wm density?160?#屏幕密度修改為 160dpi

adb shell wm density reset?#恢復原屏幕密度

2.10.3顯示區域

adb shell wm overscan?0,0,0,100

# 四個數字分別表示距離左、上、右、下邊緣的留白像素,以上命令表示將屏幕底部 100px留白

adb shell wm overscan reset?#恢復顯示區域

2.10.4 關閉 USB 調試模式

adb shell settings put global adb_enabled 0

使用命令無法恢復調試模式,只能通過手動

2.10.5 狀態欄和導航欄的顯示隱藏

adb shell settings put global policy_control <key-values>

<key-values> 可由如下幾種鍵及其對應的值組成,格式為 <key1>=<value1>:<key2>=<value2>

key 鍵對應的值

這些鍵對應的值可則如下值用逗號組合

示例:

# 設置在所有界面下都同時隱藏狀態欄和導航欄
$adb shell settings put global policy_control immersive.full=*# 設置在包名為 com.package1 和 com.package2 的應用里隱藏狀態欄,在除了包名為 com.package3 的所有應用里隱藏導航欄。
$adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3

2.11 實用功能

2.11.1屏幕截圖

adb exec-out screencap -p > img.png?# 老版本無exec-out命令,只適合于新版的截圖

adb shell screencap -p /sdcard/img.png?# 老版本截圖先保存在設備端

adb pull /sdcard/img.png?# 通過pull拷貝到本地

screencap 參數:

參數 含義

-p 指定保存文件為 png 格式

-d display-id 指定截圖的顯示屏編號(有多顯示屏的情況下)

2.11.2錄制屏幕

#?默認錄制時間和最長錄制時間都是180s

adb shell screenrecord /sdcard/filename.mp4

screenrecord 參數:

參數 含義

--size WIDTHxHEIGHT 視頻的尺寸,比如 1280x720,默認是屏幕分辨率。

--bit-rate RATE 視頻的比特率,默認是 4Mbps。

--time-limit TIME 錄制時長,單位秒。

--verbose 輸出更多信息。

2.11.3 重新掛載 system 分區為可寫

注:需要 root 權限

/system 分區默認掛載為只讀,但有些操作比如給 Android 系統添加命令、刪除自帶應用等需要對 /system 進行寫操作,所以需要重新掛載它為可讀寫。

步驟:

1.進入 shell 并切換到 root 用戶權限。

$adb shell
$su

2.查看當前分區掛載情況。

$mount
輸出如下
.....
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/mtdblock0 /system ext4 ro,seclabel,relatime,data=ordered 0 0
.......

找到其中我們關注的帶?/system?的那一行:

3.重新掛載。

$mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system

2.11.4 查看連接過的 WiFi 密碼

注:需要 root 權限

$adb shell
$su
$cat /data/misc/wifi/*.conf

2.11.5設置系統日期和時間

注:需要 root 權限

$adb shell
$su
$date -s 20190531.131600  #將系統日期和時間更改為 2019 年 05 月 31 日 13 點 16 分 00 秒。

2.11.6 重啟手機

$adb reboot

2.11.7 檢測設備是否已 root

$adb shell
$su

此時命令行提示符是 $ 則表示沒有 root 權限,是 # 則表示已 root。

2.11.8 使用 Monkey 進行壓力測試

Monkey 可以生成偽隨機用戶事件來模擬單擊、觸摸、手勢等操作,可以對正在開發中的程序進行隨機壓力測試。

# 向 <packagename> 指定的應用程序發送 500 個偽隨機事件
$adb shell monkey -p <packagename> -v 500

monkey 官方文檔?https://developer.android.com/studio/test/monkey.html

2.11.9 開啟/關閉 WiFi

注:需要 root 權限

開啟 WiFi:

$adb root
$adb shell svc wifi enable

關閉 WiFi:

$adb root
$adb shell svc wifi disable

2.12刷機相關命令

注:不要隨便操作,沒實驗過無法保證成功

2.12.1重啟到 Recovery 模式

$adb reboot recovery

2.12.2從 Recovery 重啟到 Android

$adb reboot

2.12.3重啟到 Fastboot 模式

$adb reboot bootloader

2.12.4通過 sideload 更新系統

如果我們下載了 Android 設備對應的系統更新包到電腦上,那么也可以通過 adb 來完成更新。

以 Recovery 模式下更新為例:

1.重啟到 Recovery 模式。

$adb reboot recovery

2.在設備的 Recovery 界面上操作進入 Apply update-Apply from ADB。

注:不同的 Recovery 菜單可能與此有差異,有的是一級菜單就有 Apply update from ADB。

3.通過 adb 上傳和更新系統。

$adb sideload <path-to-update.zip>

2.13 更多 adb shell 命令

2.13.1查看進程

adb shell ps

2.13.2查看實時資源占用情況

adb shell top

top命令參數如下:

使用方法: top [ -m max_procs ] [ -n iterations ] [ -d delay ] [ -s sort_column ] [ -t ] [ -h ]

-m num 最多顯示多少個進程
-n num 刷新多少次后退出
-d num 刷新時間間隔(單位秒,默認值 5)
-s col 按某列排序(可用 col 值:cpu, vss, rss, thr)
-t 顯示線程信息
-h 顯示幫助文檔

2.13.3其它

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

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

相關文章

Windows系統x86機器安裝龍芯(loongarch64)3A5000虛擬機系統詳細教程

本次介紹在window系統x86機器上安裝loongarch64系統的詳細教程。 1.安裝環境準備。 首先&#xff0c;你得有臺電腦。 配置別太差&#xff0c;至少4核8G內存&#xff0c;安裝window10或者11都行&#xff08;為啥不能是Window7&#xff0c;你要用也不是不行&#xff0c;你先解決…

leetcode:860.檸檬水找零

題意&#xff1a;按照支付順序&#xff0c;進行支付&#xff0c;能夠正確找零。 解題思路&#xff1a;貪心策略&#xff1a;針對支付20的客人&#xff0c;優先選擇消耗10而不是消耗5&#xff0c;因為5可以用來找零10或20. 代碼實現&#xff1a;有三種情況&#xff08;代表三種…

vscode中使用python的cv2.imread()讀取圖片為None

這是之前的代碼&#xff1a; import cv2img_path c:\\Users\\LENOVO\\Desktop\\QQ截圖20240228234801.jpg print(img_path) print(cv2.__version__)img cv2.imread(img_path) print(img)運行結果&#xff1a; c:\Users\LENOVO\Desktop\QQ截圖20240228234801.jpg 3.4.1 None…

Linux下主線程 return 0 和 pthread_exit(NULL) 的區別

1. 背景 在Linux環境下&#xff0c;主線程以return 0結束時&#xff0c;程序會在主線程運行完畢后結束。而當主線程以pthread_exit(NULL)作為返回值時&#xff0c;主線程會等待子線程結束后才會退出程序。本文將詳細探討這兩種方式的區別&#xff0c;并提供相應的代碼示例。 …

String類的使用

String常用的構造方法 String的源碼 內部是一個數組和hash值&#xff0c;涉及到常量池后續補充&#xff08;常量池&#xff1a;存儲相同的字符時只會存儲一租&#xff09; String的比較 equals()與&#xff1a;String里面為我們提供了許多方法&#xff0c;可直接調用&#xf…

2024最新-ubuntu22.04安裝最新版QT6.6~6.8教程

? 1. 在官網下載 online_installer&#xff1a; https://download.qt.io/archive/online_installers/4.7/qt-unified-linux-x64-4.7.0-online.run 或者直接鏡像站下載&#xff1a; http://mirrors.ustc.edu.cn/qtproject/archive/online_installers/4.7/qt-unified-linux-x6…

數據結構之二叉樹的精講

&#x1d649;&#x1d65e;&#x1d658;&#x1d65a;!!&#x1f44f;&#x1f3fb;???????&#x1f44f;&#x1f3fb;??????? &#x1f44f;&#x1f3fb;?????:Solitary_walk ?? ━━━┓ - 個性標簽 - &#xff1a;來于“云”的“羽球人”。…

蘋果汽車項目的敗局:起步失誤與方向迷茫

蘋果汽車的發展方向內部分歧導致項目多年掙扎&#xff0c;最終在本周宣布終止。 Brian X. Chen 和 Tripp Mickle 從項目初期就開始關注蘋果的汽車項目。 在過去十年中&#xff0c;許多參與蘋果秘密汽車項目“泰坦”&#xff08;內部代號&#xff09;的員工戲稱其為“泰坦尼克…

Python實現鏈表:從基礎到應用

一、引言 鏈表是一種常見的數據結構&#xff0c;它由一系列節點組成&#xff0c;每個節點包含數據和指向下一個節點的指針。鏈表在內存中的存儲不是連續的&#xff0c;這使得它在插入和刪除操作上具有較高的效率。本文將使用Python語言來實現一個簡單的鏈表&#xff0c;并展示其…

【前端面試題1】偽類與偽元素有什么區別

偽類與偽元素的區別&#xff1a; 1.偽類使用單冒號&#xff0c;而偽元素使用雙冒號。如 :hover 是偽類&#xff0c;::before 是偽元素 2.偽元素會在文檔流生成一個新的元素&#xff0c;但偽元素本身并不是DOM元素&#xff0c;并且可以使用 content 屬性設置內容 CSS偽類與偽元…

卷積神經網絡基本概念補充

卷積&#xff08;convolution&#xff09;、通道&#xff08;channel&#xff09; 卷積核大小一般為奇數&#xff0c;有中心像素點&#xff0c;便于定位卷積核。 步長&#xff08;stride&#xff09;、填充&#xff08;padding&#xff09; 卷積核移動的步長&#xff08;stride…

小白提示您:FaceTime詐騙持續高發,小伙伴們謹防詐騙!

前幾天小白的iPhone突然接到了個FaceTime通話請求&#xff0c;說是某抖音賬號需要續費啥的才能解鎖某些功能。&#xff08;具體小白也記不太清了&#xff09; 這幾天也有朋友說有個支付寶客服打FaceTime通話給他說快遞出現了點問題&#xff0c;需要操作認證一下才能退款啥的。…

多線程萬字詳解

進程和線程是計算機程序執行的兩個重要概念。 1.進程&#xff1a; 進程是操作系統分配資源的基本單位&#xff0c;每個進程都有自己獨立的地址空間&#xff0c;每啟動一個進程&#xff0c;系統就會為它分配內存。進程間通信比較復雜&#xff0c;需要用到IPC&#xff08;InterP…

js監聽F11觸發全屏事件

當用戶使用 F11 鍵進行瀏覽器全屏時&#xff0c;由于此時并非通過瀏覽器提供的 Fullscreen API 進入全屏模式&#xff0c;因此無法通過 fullscreenchange 事件來監聽全屏狀態的變化。在這種情況下&#xff0c;可以通過監聽 resize 事件來檢測瀏覽器窗口大小的變化&#xff0c;從…

【學習日記】快速排序

思想 快速排序之所以快&#xff0c;一個重要原因就是其每一次遍歷&#xff0c;都把本輪要排序的數字&#xff08;稱為軸&#xff09;放到了最終的位置上快排使用分治思想&#xff0c;所以一般采用遞歸實現&#xff0c;非遞歸版本可以用棧根據第一點&#xff0c;我們需要一個函…

[滲透教程]-006-滲透測試-Metasploit

文章目錄 1.Metasploit簡介2.配置2.1方法1 推薦2.2方法23.使用4. Metasploitable2-linuxMetasploit攻擊流程攻擊實例步驟會話管理1.Metasploit簡介 Metasploit是一個滲透測試平臺,使您能夠查找,利用和驗證漏洞.是一個免費的可下載的,通過它可以很容易對計算機軟件漏洞實施攻擊.…

AttributeError_ ‘list‘ object has no attribute ‘view‘

問題描述 訓練yolov9的時候遇到了下面的問題。 In loss_tal.py: pred_distri, pred_scores torch.cat([xi.view(feats[0].shape[0], self.no, -1) for xi in feats], 2).split( (self.reg_max * 4, self.nc), 1) The error is as follows&#xff1a; AttributeError: list …

JavaWeb之 Web概述

目錄 前言1.1 Web和 JavaWeb的概念1.2 JavaWeb技術棧1.2.1 B/S架構1.2.2 靜態資源1.2.3 動態資源1.2.4 數據庫1.2.5 HTTP協議1.2.6 Web服務器 1.3 JavaWeb 學習內容 前言 博主將用 CSDN 記錄 Java 后端開發學習之路上的經驗&#xff0c;并將自己整理的編程經驗和知識分享出來&a…

【Web自動化測試——代碼篇十二】自動化測試模型——數據驅動測試和關鍵字驅動測試

&#x1f525; 交流討論&#xff1a;歡迎加入我們一起學習&#xff01; &#x1f525; 資源分享&#xff1a;耗時200小時精選的「軟件測試」資料包 &#x1f525; 教程推薦&#xff1a;火遍全網的《軟件測試》教程 &#x1f4e2;歡迎點贊 &#x1f44d; 收藏 ?留言 &#x1…

「優選算法刷題」:刪除字符串中的所有相鄰重復項

一、題目 給出由小寫字母組成的字符串 S&#xff0c;重復項刪除操作會選擇兩個相鄰且相同的字母&#xff0c;并刪除它們。 在 S 上反復執行重復項刪除操作&#xff0c;直到無法繼續刪除。 在完成所有重復項刪除操作后返回最終的字符串。答案保證唯一。 示例&#xff1a; 輸…