`
marine8888
  • 浏览: 544532 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android模拟器命令大全(转载)

阅读更多

1、Android模拟器介绍

Android中提供了一个模拟器来模拟ARM核的移动设备。Android的模拟器是基于QEMU开发的,QEMU是一个有名的开源虚拟机项目(详见http://bellard.org/qemu/),它可以提供一个虚拟的ARM移动设备。Android模拟器被命名为goldfish,用来模拟包括下面一些功能的ARM SoC:

* ARM926ej-S CPU

* Thumb support

* MMC

* RTC

* Keyboard

* USB Gadget

* framebuffer

* TTY driver

* NAND FLASH

Android模拟器所对应的源代码主要在external/qemu目录下。如果你想将Android移植到其他设备上,熟悉它目前所针对的模拟器环境可以提供一些参考。

对于应用程序的开发者,模拟器提供了很多开发和测试时的便利。无论在Windows下还是Linux下,Android模拟器都可以顺利运行,并且Google提供了Eclipse插件,可将模拟器集成到Eclipse的IDE环境。当然,你也可以从命令行启动Android模拟器。

这款模拟器功能非常齐全,电话本、通话等功能都可正常使用(当然你没办法真的从这里打电话)。甚至其内置的浏览器和Google Maps都可以联网。用户可以使用键盘输入,鼠标点击模拟器按键输入,甚至还可以使用鼠标点击、拖动屏幕进行操纵。

当然模拟器毕竟是模拟器,和真实的机子还是存在差别的,

android模拟器和真机的不同之处:

* 不支持呼叫和接听实际来电;但可以通过控制台模拟电话呼叫(呼入和呼出)
* 不支持USB连接

* 不支持相机/视频捕捉

* 不支持音频输入(捕捉);但支持输出(重放)

* 不支持扩展耳机

* 不能确定连接状态

* 不能确定电池电量水平和交流充电状态

* 不能确定SD卡的插入/弹出

* 不支持蓝牙

2、创建和启动Android模拟器

要玩GPhone的模拟器,当然需要先去http://developer.android.com/sdk(如果打不开就用http://androidappdocs.appspot.com/sdk/index.html)上面下载Android的SDK,解压出来后在SDK的根目录下有一个tools文件夹,里面就是模拟器和一些非常有用的工具。(SDK详细的安装过程请参照http://blog.csdn.net/magicyu2/archive/2009/11/02/4755747.aspx)

要正确的启动模拟,你必须先要创建一个 AVD( Android Virtual Device 虚拟设备 ) ,你可以利用AVD创建基于不同版本的模拟器,下面就介绍如何创建AVD:

(1) 查看当前支持版本(在列出的版本中我们需要记住id值,这个值在第2步中使用):

magicyu@magicyu-desktop:~$ android list target

你可以看到几个Available Android targets,比如:Name: Android 1.6,他们有各自的id号。

(2) 创建AVD:

magicyu@magicyu-desktop:~$ android create avd -n magicyu -t 2

-n后面接需要创建avd的名字,-t后面接需要创建虚拟器的类型,2即为步骤(1)中得到的类型id号。

(3) 查看是否创建成功(如果成功会显示刚才我们创建的avd信息):

magicyu@magicyu-desktop:~$ android list avd

(4) 启动模拟器:

magicyu@magicyu-desktop:~$ emulator @magicyu 或者

emulator -avd magicyu

其中@和-avd后接的是你创建过的avd名字

(5) 选择启动的皮肤

magicyu@magicyu-desktop:~$ emulator -avd magicyu -skin QVGA

skin后面接所要启动皮肤的类型,所有的类型可以在/ platforms/android-1.*/skins目录下找到,*为所指的版本。如在1.6版本的SDK下有HVGA,QVGA, WVGA800,WVGA854几种。按Ctrl+F11,可以直接改变模拟器的横纵摆放。

当然AVD也可以在Eclipse中创建和启动。关于Eclipse+ADT+SDK的安装请参见http://blog.csdn.net/magicyu2/archive/2009/11/02/4755747.aspx。

运行Eclipse,Window->Android SDK and AVD Manager,就能得到如下的界面,选择新建即可新建一个AVD。

3、Android模拟器的一些工具

(1)adb:

ADB(Android Debug Bridge)是Android 提供的一个通用的调试工具,借助这个工具,我们可以管理设备或手机模拟器的状态还可以进行以下的操作:

a、快速更新设备或手机模拟器中的代码,如应用或Android系统升级;

b、在设备上运行shell命令;

c、管理设备或手机模拟器上的预定端口;

d、在设备或手机模拟器上复制或粘贴文件

一些常用的操作:

进入Shell: adb shell

通过上面的命令,就可以进入设备或模拟器的shell环境中,在这个Linux Shell中,你可以执行各种Linux 的命令,另外如果只想执行一条shell命令,可以采用以下的方式:

adb shell [command]

如:adb shell dmesg会打印出内核的调试信息。

(Android的linux shell做了大量精简,很多linux常用指令都不支持)

上传文件: adb push

下载文件: adb pull

安装程序: adb install

卸载软件: adb shell rm /data/app/

补充一点,通过adb安装的软件(*.apk)都在”/data/app/”目录下,所以安装时不必制定路径,卸载只需要简单的执行”rm”就行。

结束adb: adb kill-server

显示android模拟器状态:

adb devices (端口信息)

adb get-product (设备型号)

adb get-serialno (序列号)

等待正在运行的设备: adb wait-for-device

端口转发: adb forward adb forward tcp:5555 tcp:1234

(将默认端口TCP 5555转发到1234端口上)

查看bug报告: adb bugreport

adb shell sqlite3 访问数据库SQLite3

adb shell logcat -b radio 记录无线通讯日志: 一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录

应用程序配置文件:

“AndroidManifest.xml”中

“”

决定是否应用程序是否显示在Panel上

(2)am指令(在shell内使用am来加载android应用):

am [start|instrument]

am start [-a ]

[-d ]

[-t ]

[-c [-c ] …]

[-e [-e ...]

[-n ] [-D] []

am instrument [-e ]

[-p ]

[-w]

启动浏览器:

am start -a android.intent.action.VIEW -d http://www.google.cn/

拨打电话:

am start -a android.intent.action.CALL -d tel:10086

启动google map直接定位到北京:

am start -a android.intent.action.VIEW geo:00?q=beijing

(3)为模拟器加上SD卡:

emulator -sdcard dcard.img

下面我们再来说说如何创建”sdcard.img”文件:

“tools”目录下还有另外一个很好用的工具mksdcard,一看名字就知道——make sdcard。对,就用它来创建一个“SD卡”。

命令为:

mksdcard 1024M D:dcard.img

OK这样一个容量为1G的SD卡就创建完毕了。

使用SDCard:

创建: mksdcard
(bytes(default),K,M)

连接到模拟器: emulator -sdcard

传文件到SDCard: adb push

(4)Android模拟器打电话发短信

GPhone的模拟器有个特有的号码:15555218135,这个就类似我们实体手机的SIM卡号码啦。要实现拨号,用手机?当然不行!

更简单,三步:

1.打开终端

2.连接: telnet localhost 5554(5554是你打开模拟器后上面显示的数字)

3.命令:gsm call 15555218135

look!是不是模拟器上显示来电了?接听/挂断和实体手机一样。

发短信也一样简单,重复上面1,2两步,第三部命令改一下:

sms send 15555218135 Hellothis is a Message.

4、Android模拟器主要命令参数介绍

emulator [- []] … [-]
下面的表总结了可用的参数

Help

-help打印模拟器参数列表。

-help-all打印所有启动参数明细。

-help-打印指定启动参数的信息。

-help-debug-tags打印所有被-debug 打开的列表。

-help-disk-images打印正在使用的磁盘镜像信息。

-help-environment打印模拟器环境变量信息。

-help-keys打印当前的键盘映射。

-help-keyset-file打印一个自定义的键盘映射文件的定义。

Disk Images

-cache 使用 指定网络缓存分区镜像。

自定义,您可以指定一个当前工作目录的相对路径。如果没有指定缓存文件,模拟器会指定一个零时文件作为缓存文件。更多信息请参考-help-disk-images.

-data 使用作为用户数据磁盘镜像。

自定义,您可以指定一个当前工作目录的相对路径。如果-data没有被使用,模拟器会在指定的目录下寻找名叫”userdata-qemu.img”的镜像文件。默认情况下,模拟器会寻找~/.android (on Linux/Mac)或者C:\Documents and Settings\\Local Settings\Application Data\Android (on Windows)。

如果您使用了-data ,但是文件并不存在,模拟器将创建同名文件。

更多信息请参见运行多个模拟器实例和-help-disk-images。

-image 使用作为系统镜像。

自定义,您可以指定一个当前工作目录的相对路径。默认为/system.img。
-initdata

重写用户数据镜像时,(使用 -wipe-data),复制此文件内容到新用户数据文件镜像中。默认方式下,模拟器拷贝/userdata.img。

自定义,您可以指定一个当前工作目录的相对路径。参见-wipe-data。

更多信息请参见-help-disk-images。

-kernel 使用作为模拟器内核。自定义,您可以指定一个当前工作目录的相对路径。

-nocache启动模拟器时无缓存分区。参见-cache 。

-ramdisk 使用作为虚拟内存镜像。默认为/ramdisk.img. 自定义,您可以指定一个当前工作目录的相对路径。更多信息请参见-help-disk-images。

-sdcard 使用作为SD卡镜像。默认为/sdcard.img. 自定义,您可以指定一个当前工作目录的相对路径。更多信息请参见-help-disk-images。

-system 在指定的下搜索系统、虚拟内存和用户数据镜像文件。为当前路径的相对目录。

-wipe-data重至用户数据镜像文件。(that is the file specified by -datadir and -data or the default file). 模拟器删除所有用户数据,然后复制右-inidata参数指定的数据到镜像文件,在启动之前。参见-initdata. 更多信息请参见-help-disk-images。

Debug

-debug 开启/关闭指定tag的调试信息。

是一个被空格/逗号/纵列所分割的调试组建名称列表。更多信息参见-help-debug-tags。

-debug-开启/关闭指定tag的调试信息。使用-help-debug-tags获得您可以指定为的调试组件列表。

-debug-no-关闭指定tag的调试信息。

-logcat 打开指定tag的日志输出。如果环境变量ANDROID_LOG_TAGS被指定且不为空,她的值将成为日志输出的默认值。

-shell创建一个拥有root权限的命令行窗口。即使模拟器的UI界面无法使用了,您依然可以使用命令行窗口。按Ctr-c键中断模拟器运行。

-shell-serial 打开具有root权限的脚本窗口。必须是一个QEMU类型的设备。参见’serial -dev’在 http://www.bellard.org/qemu/qemu-doc.html#SEC10上关于设备类型的列表信息。这儿有一些例子:

· -shell-serial stdio is identical to -shell

· -shell-serial tcp::4444servernowait 让您的shell可以通过4444端口通讯。

· -shell-serial fdpair:3:6 让模拟器可以使用3 (in)和6(out)磁碟机。

· -shell-serial fdpair:0:1 uses the normal stdin and stdout fds except that QEMU won’t tty-cook the data.

-show-kernel 显示内核信息。

-trace Enable code profiling (press F9 to start) written to a specified file.

-verbose开启冗长输出。Equivalent to -debug-init. 您可以定义ANDROID_VERBOSE环境变量作为冗长输出参数。定义你想用到的参数,用逗号分割。这样可以省略像-debug-这样的参数。下面是一个设置ANDROID_VERBOSE的例子,它带有-debug-init和 -debug-modem 参数:

ANDROID_VERBOSE=initmodem更多信息参见.

Media
-audio 使用指定的音频后端。

-audio-in 使用指定的音频输入后端。

-audio-out 使用指定的音频输出后端。

-noaudio在当前虚拟机实例中关闭音频支持。

-radio 重新定向收音机接口到本地的字节设备。

-useaudio打开模拟器实例的音频支持。默认为打开。

Network

-dns-server 使用指定的DNS服务器。必须是以逗号分割,多于4个的服务器名或IP地址。

-http-proxy 配置TCP连接使用HTTP/HTTPS代理。

必须符合以下格式:http://:

http://:@: 前缀http://可以被忽略。如果-http-proxy 未被指定,模拟器将寻找http_proxy环境变量,并且自动寻找所有符号格式要求的 值。

-netdelay 设置网络延迟默认值为none。参见Network Delay Emulation中关于的值。

-netfast快捷的 -netspeed full -netdelay none

-netspeed 指定模拟器网络速度为.默认值为full。参见表格Network Speed Emulation 中的值。

-port 指定模拟器网络端口为.控制台端口号必须介于5554和5584之间,并且+1必须留作ADB使用。

-report-console 启动前向第三方同志此模拟器实例的网络端口。 必须是以下几种格式

tcp:[server][max=]

unix:[server][max=]

更多信息参见 -help-report-console
System

-cpu-delay 降低模拟器CPU的速度到。支持0到100的整数。注意与具体的时钟或其他的绝对频率无关。它只表现为一种抽象的,相对于当前模拟器运行状况的速度调节。

-gps 重定向NMEA GPS到字节设备。

使用此参数通知模拟器模拟一个NMEA-compatible GPS,连接到一个扩展的设备或socket端口。格式必须符合QEMU-specific所指定的设备格式。更多信息参见’serial -dev’ 和 http://www.bellard.org/qemu/qemu-doc.html#SEC10.

-nojni在Dalvik运行时关闭JNI检查

-qemu传递参数到qemu。

-qemu -h关闭qemu帮助。

-radio 重定向录音机模块到制定的字符设备。格式必须符合QEMU规定的序列设备。详情参见http://www.bellard.org/qemu/qemu-doc.html#SEC10.

-timezone 设定模拟器时区为,替换为系统时区。必须按照时区格式指定。比如:”America/Los_Angeles”,”Europe/Paris”

-version显示模拟器版本号。

UI

-dpi-device 修改模拟器的分辨率适配物理设备。默认值为165。参见-scale.

-no-boot-anim关闭模拟器启动时的动画。禁用启动动画可以加快启动速度。

-no-window关闭模拟器的绘制窗口。

-scale 调整模拟器窗口。 是介于0.1到3的数字,它是调整屏幕的比例因子。您也可以指定一个DPI值,在添加dpi前缀的情况下。Auto参数告诉模拟器选择自己最合适的尺寸。

-raw-keys关闭Unicode键盘reverse-mapping.

-noskin不使用任何模拟器皮肤。

-keyset 用指定的键盘设置文件代替默认。指定宿主键盘和模拟器之间的键盘映射文件。更多信息参见-help-keyset。

-onion 用图片覆盖屏幕。不支持JPEG,只支持PNG

-onion-alpha 指定onion皮肤透明值(百分比) 默认为50.

-onion-rotation 指定onion皮肤旋转。 必须是 0 1 2 3中的一个。

-skin 启动模拟器,搭配指定皮肤。

-skindir 在指定目录下搜索皮肤

分享到:
评论

相关推荐

    U盘量产工具SM3280&3281&3282-AvidiaV0209整合版

    U盘量产工具FLASH量产工具SM3280&3281&3282-AvidiaV0209整合版

    java课程期末考试.zip

    java课程期末考试

    分布式消息中间件,参考kafka,未完成.zip

    分布式消息中间件,参考kafka,未完成

    修木工施工规范及流程.docx

    修木工施工规范及流程.docx

    汽车电子中MICROSAR OBD协议栈解决方案及其应用

    内容概要:本文详细介绍了VECTOR提供的MICROSAR OBD协议栈解决方案,涵盖了OBD模块、ECU支持、监控功能和服务请求等方面的内容。此外,还讨论了OBD在不同国家和地区的技术标准与法规要求,以及MICROSAR OBD解决方案的优势,如适应不同项目的需求和高度集成于AUTOSAR 4平台。 适合人群:汽车电子工程师、软件开发者、汽车制造商及相关行业从业人员。 使用场景及目标:① 适用于车辆诊断系统的开发和维护;②帮助工程师理解和掌握OBD协议的具体实施方法和应用场景;③ 提供了一个成熟、可扩展的解决方案,用于满足OBD相关标准和法规的要求。 其他说明:本文不仅提供了技术层面的详细解析,还探讨了实际操作过程中可能遇到的问题和解决方案。同时强调了屏蔽信息过载的重要性,提醒工程师保持内心平静,专注做好本职工作。

    适用于 Python 的 LINE 消息 API SDK.zip

    适用于 Python 的 LINE 消息 API SDK适用于 Python 的 LINE Messaging API 的 SDK。介绍适用于 Python 的 LINE Messaging API SDK 可以轻松使用 LINE Messaging API 开发机器人,您可以在几分钟内创建一个示例机器人。文档请参阅官方 API 文档了解更多信息英语https //developers.line.biz/en/docs/messaging-api/overview/日语https://developers.line.biz/ja/docs/messaging-api/overview/要求Python >= 3.9安装$ pip 安装 line-bot-sdk概要用法from flask import Flask, request, abortfrom linebot.v3 import ( WebhookHandler)from linebot.v3.exceptions import ( InvalidSig

    Java字节码工程工具包.zip

    Java字节码工程工具包Javassist 版本 3版权所有 (C) 1999-2023 Shigeru Chiba,保留所有权利。Javassist(JAVA 编程助手)使 Java 字节码操作变得简单。它是一个用于编辑 Java 字节码的类库它使 Java 程序能够在运行时定义新类并在 JVM 加载类文件时对其进行修改。与其他类似的字节码编辑器不同,Javassist 提供两个级别的 API源代码级别和字节码级别。如果用户使用源代码级别 API,他们可以编辑类文件而无需了解 Java 字节码的规范。整个 API 仅使用 Java 语言的词汇表进行设计。您甚至可以以源文本的形式指定插入的字节码Javassist 会即时编译它。另一方面,字节码级别 API 允许用户像其他编辑器一样直接编辑类文件。该软件根据 Mozilla 公共许可证版本 1.1、GNU 宽通用公共许可证版本 2.1 或更高版本或 Apache 许可证版本 2.0 分发。文件README.md 此自述文件。Changes.md 发行说明。License.html 许可证文件。tuto

    毕设源码-基于python的西西家居全屋定制系统的设计与实现_ijsj--论文-期末大作业+说明文档.rar

    本项目是基于Python语言开发的西西家居全屋定制系统,旨在为家居行业提供一个高效、智能的定制解决方案。项目涵盖了从客户需求分析、设计方案生成、材料选购到最终订单生成的全过程,力求实现家居定制的数字化和智能化。 在主要功能方面,系统具备强大的客户管理模块,能够详细记录和分析客户的定制需求。设计模块则采用先进的三维建模技术,为客户提供直观、真实的家居设计方案预览。此外,系统还整合了丰富的材料数据库,方便客户根据自身喜好和预算进行材料选择。 框架方面,项目采用了B/S架构,确保了系统的稳定性和可扩展性。后端使用Python的Django框架,前端则结合了HTML、CSS和JavaScript等技术,实现了用户界面的友好和响应速度。 开发此项目的目的,不仅是为了满足家居行业对个性化定制的需求,也为计算机相关专业的学生提供了一个实践和学习的平台,有助于提升他们的实际开发能力。

    Javascript 是数字化创新的起点,是语言的基础,也是基本概念 .zip

    Javascript 是数字化创新的起点,是语言的基础,也是基本概念。Basecamp JavascriptJavascript 是数字化创新的起点,是语言的基础,也是基本概念。嵌套存储库,可作为启动项下待办事项的实践活动。

    已弃用 - Coinbase Python API.zip

    已弃用 — Coinbase Python APICoinbase Coinbase API V2的官方 Python 库。重要提示此库当前针对的是 API V2,而 OAuth 客户端需要 V2 权限(即wallet:accounts:read)。如果您仍在使用 API V1,请使用此库的旧版本。特征接近 100% 的测试覆盖率。支持API Key + Secret和OAuth 2身份验证。调用 API 的便捷方法 - 为您打包 JSON!自动将 API 响应解析为相关的 Python 对象。使用IPython时,所有对象都具有可制表完成的方法和属性。安装coinbase可以在PYPI上使用。使用以下命令安装pippip install coinbase或者easy_installeasy_install coinbase该库目前针对 Python 版本 2.7 和 3.4+ 进行了测试。注意此软件包名称过去是指George Sibble维护的非官方 coinbase_python 库。George 慷慨地允许我们使用此软件包

    基于RBAC权限控制的基础后台.zip

    基于RBAC权限控制的基础后台

    毕设源码-python-基于Python爬虫的网络小说数据分析系统的设计与实现-期末大作业+说明文档.rar

    本项目是基于Python爬虫的网络小说数据分析系统的设计与实现,旨在为计算机相关专业的大学生提供一个实践平台,特别是在毕业设计和项目实战练习方面。项目通过Python强大的网络爬虫技术,从流行的网络小说网站自动抓取数据,包括书籍信息、章节内容、用户评论等。 主要功能涵盖数据采集、数据清洗、数据存储和数据分析。数据采集模块利用Scrapy等爬虫框架高效抓取网页内容;数据清洗模块确保数据的准确性和一致性;数据存储则采用MySQL等数据库系统,便于数据管理和查询;数据分析模块通过Pandas、NumPy等工具进行数据处理和分析,生成多维度的统计报告和可视化图表。 此项目不仅帮助学生掌握Python编程和网络爬虫技术,还能让他们深入了解数据分析的全过程,提升解决实际问题的能力。同时,系统的实现和应用也反映了现代信息技术在文学创作和消费领域的应用价值和潜力。

    ssm框架Java项目源码-基于Java的在线日语培训平台的设计与实现+jsp毕设-大作业.zip

    本项目是一个基于Java的在线日语培训平台的设计与实现,采用SSM框架(Spring+SpringMVC+MyBatis)进行开发,旨在为计算机相关专业的学生提供一个实践和学习的平台,同时也为日语学习者提供一个在线学习的空间。项目中主要功能涵盖了用户管理、课程管理、学习资源上传下载、在线测试与反馈等多个方面。通过该平台,教师能够轻松管理课程内容和学生信息,学生则可以随时随地访问学习资源,参与在线课程和测试,从而提高学习效率和兴趣。 在开发此项目的过程中,我们重点关注了系统的可维护性和可扩展性,确保代码结构清晰,便于后续的功能迭代和优化。此外,通过使用SSM框架,实现了前后端的分离,提高了开发效率和系统的响应速度。该项目不仅能够满足毕设的需求,还能作为Java学习者提升编程能力和实践经验的实用工具。

    基于java的机票管理系统设计与实现.docx

    基于java的机票管理系统设计与实现.docx

    基于Java实现的数据结构设计源码学习指南

    该项目为《基于Java实现的数据结构设计源码》,共包含51个文件,主要由46个Java源文件构成,辅以2个文本文件、1个Git忽略文件、1个许可证文件以及1个XML文件,全面涵盖了数据结构设计的核心内容。

    绿色食品 水稻生产操作规程.docx

    绿色食品 水稻生产操作规程.docx

    这款出色的应用程序可以纠正您之前的控制台命令 .zip

    他妈的 Fuck是一款出色的应用程序,其灵感来自@liamosaur 的 推文,它可以纠正以前控制台命令中的错误。The Fuck太慢了吗?试试实验性的即时模式!更多示例➜ apt-get install vimE: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?➜ fucksudo apt-get install vim [enter/↑/↓/ctrl+c][sudo] password for nvbn:Reading package lists... Done...➜ git pushfatal: The current branch master has no upstream branch.To push the current branch and set the remote

    全国大学生FPGA创新设计竞赛作品 泡罩包装药品质量在线检测平台.zip

    全国大学生FPGA创新设计竞赛作品 “泡罩包装药品质量在线检测平台“.zip

    桃苗木质量基本要求表.docx

    桃苗木质量基本要求表.docx

    使用 Python 漂亮地打印表格数据,这是一个库和一个命令行实用程序 存储库从 bitbucket.org,astanin,python-tabulate 迁移而来 .zip

    使用 Python 漂亮地打印表格数据,这是一个库和一个命令行实用程序。存储库从 bitbucket.org/astanin/python-tabulate 迁移而来。python-tabulate使用 Python、库和命令行实用程序漂亮地打印表格数据。该库的主要用例是轻松打印小表格只需一个函数调用,格式由数据本身引导为轻量级纯文本标记创作表格数据多种输出格式适合进一步编辑或转换混合文本和数字数据的可读表示智能列对齐、可配置数字格式、小数点对齐安装要安装 Python 库和命令行实用程序,请运行pip install tabulate命令行实用程序将在 Linux 上安装为(例如tabulate)或者在 Windows 上的 Python 安装中安装为(例如)。bin/usr/bintabulate.exeScriptsC:\Python39\Scripts\tabulate.exe您可以考虑仅为当前用户安装该库pip install tabulate --user在这种情况下,命令行实用程序将安装到 ~/.local/bin/tabula

Global site tag (gtag.js) - Google Analytics