安卓命令行终端shell(电脑命令行控制安卓手机)
本文目录
- 电脑命令行控制安卓手机
- android apk 怎么执行adb shell命令
- 如何在Android Shell命令行中断运行中的程序
- 如何打开android命令行终端
- 安卓设备中在执行bat脚本时abd shell自动输入密码并执行命令怎么写
- android的shell有啥用
- 如何在android程序中执行adb shell命令
- 安卓命令有哪些
电脑命令行控制安卓手机
安卓手机运行,打开cmd命令,其实运行的是shell指令,也就是linux,下列是操作步骤:1. 首先下载附件adb_win.zip,解压获得3个文件,将这3个文件复制粘贴到电脑C盘/Windows/system32里面。//也可以复制 android-sdk-windows\platform-tools下面的三个文件:adb.exeAdbWinApi.dllAdbWinUsbApi.dll到windows/system32中。2. 电脑安装驱动android程序,尽量安装最新版本的驱动。然后下载一个最新的91手机助手,安装后,即可完成android驱动的安装。3. 点击电脑屏幕左下方的开始菜单,输入cmd,然后回车即可打开命令符。4. 在命令符终端输入 adb shell,若光标变成了adb shell的下一行出现了 $ 说明实现了cmd shell连接。5. 连接成功以后,输入任何shell脚本命令都将是在手机系统中执行。
android apk 怎么执行adb shell命令
android中执行shell命令有两种方式:1.直接在代码中用java提供的Runtime 这个类来执行命令,以下为完整示例代码。public void execCommand(String command) throws IOException { // start the ls command running //String{"sh", "-c", command}; Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec(command); //这句话就是shell与高级语言间的调用 //如果有参数的话可以用另外一个被重载的exec方法 //实际上这样执行时启动了一个子进程,它没有父进程的控制台 //也就看不到输出,所以需要用输出流来得到shell执行后的输出 InputStream inputstream = proc.getInputStream(); InputStreamReader inputstreamreader = new InputStreamReader(inputstream); BufferedReader bufferedreader = new BufferedReader(inputstreamreader); // read the ls output String line = ""; StringBuilder sb = new StringBuilder(line); while ((line = bufferedreader.readLine()) != null) { //System.out.println(line); sb.append(line); sb.append(’\n’); } //tv.setText(sb.toString()); //使用exec执行不会等执行成功以后才返回,它会立即返回 //所以在某些情况下是很要命的(比如复制文件的时候) //使用wairFor()可以等待命令执行完成以后才返回 try { if (proc.waitFor() != 0) { System.err.println("exit value = " + proc.exitValue()); } } catch (InterruptedException e) { System.err.println(e); } }}2.直接安装shell模拟器,即已经开发好的android应用,启动后类似windows的dos命令行,可以直接安装使用,可执行常用的linux命令,应用在附件。shell.apk大小:455.51K所需财富值:5 已经过百度安全检测,放心下载点击下载下载量:1
如何在Android Shell命令行中断运行中的程序
android程序执行adb shell命令(实例源码)package net.gimite.nativeexe; import java.io.BufferedReader; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import net.gimite.nativeexe.R; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.view.View.OnClickListener; import android.widget.*; public class MainActivity extends Activity { private TextView outputView; private Button localRunButton; private EditText localPathEdit; private Handler handler = new Handler(); private EditText urlEdit; private Button remoteRunButton; /** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); outputView = (TextView)findViewById(R.id.outputView); localPathEdit = (EditText)findViewById(R.id.localPathEdit); localRunButton = (Button)findViewById(R.id.localRunButton); localRunButton.setOnClickListener(onLocalRunButtonClick); } private OnClickListener onLocalRunButtonClick = new OnClickListener() { public void onClick(View v) { String output = exec(localPathEdit.getText().toString()); output(output); // try { // // // Process process = Runtime.getRuntime().exec(localPathEdit.getText().toString()); // // } catch (IOException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } } }; // Executes UNIX command. private String exec(String command) { try { Process process = Runtime.getRuntime().exec(command); BufferedReader reader = new BufferedReader( new InputStreamReader(process.getInputStream())); int read; char; StringBuffer output = new StringBuffer(); while ((read = reader.read(buffer)) 》 0) { output.append(buffer, 0, read); } reader.close(); process.waitFor(); return output.toString(); } catch (IOException e) { throw new RuntimeException(e); } catch (InterruptedException e) { throw new RuntimeException(e); } } private void download(String urlStr, String localPath) { try { URL url = new URL(urlStr); HttpURLConnection urlconn = (HttpURLConnection)url.openConnection(); urlconn.setRequestMethod("GET"); urlconn.setInstanceFollowRedirects(true); urlconn.connect(); InputStream in = urlconn.getInputStream(); FileOutputStream out = new FileOutputStream(localPath); int read; byte; while ((read = in.read(buffer)) 》 0) { out.write(buffer, 0, read); } out.close(); in.close(); urlconn.disconnect(); } catch (MalformedURLException e) { throw new RuntimeException(e); } catch (IOException e) { throw new RuntimeException(e); } } private void output(final String str) { Runnable proc = new Runnable() { public void run() { outputView.setText(str); } }; handler.post(proc); } }
如何打开android命令行终端
1、连接电脑上,用adb打开,android命令行终端即可。
2、如果你想直接在android上打开,可以安装一个android terminal,在手机上使用linux命令行。
扩展资料:
终端命令sudo: Executing Commands with Elevated Privileges 执行命令特权 sudo是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登陆 和管理时间,同样也提高了安全性。Sudo不是对shell的一个代替,它是面向每个命令的。
app_0是用户名,也就是终端在系统中的名字。android是主机名/ 表示当前路径。
这些信息存储在变量PS1中,自己可以改变。改成彩色更加美观,而且输入命令后更加容易找到提示符。有一个重要的基本变量是PATH,这叫命令搜索路径。
安卓设备中在执行bat脚本时abd shell自动输入密码并执行命令怎么写
可以使用 echo 命令和管道符 | 将密码输入到 adb shell 的命令中。假设你的密码为 mypassword,需要执行的命令为 mycommand,那么可以这样写:echo mypassword | adb shell mycomman在上面的命令中,echo mypassword 将密码输出到标准输出流,然后通过管道符 | 将标准输出流连接到 adb shell mycommand 命令的标准输入流中,这样就实现了自动输入密码并执行命令的效果。
android的shell有啥用
android 底层驱动实际linux, linux中大量使用了shell。那 shell到底是什么东西呢?个人理解相当于windows中的cmd,但是shell很强大,如果你能熟练使用shell,在android开发中如虎添翼。下面就android常用的shell进行一下说明:1. cd (change directory) 如: cd / 跳转到根目录 cd ~ 跳转到用户所在的目录2. ls (list)显示目录结构3. chmod 777 path在开发过程中,如果发现文件不能读写,首先应该想到是否给user权限,可以通过该命令试试看改变目录属性,如果目录下面还有子目录,加上-R4. chown 该变目录所有者如果目录还有子目录,加上-R5. rm 目录如果是文件加上-f如果是目录加上-r6. find找文件,如果找到R.java文件,然后删除它find . -name R.java|args rm -rffind . -name *.svn|xargs rm -rffind . -name *.class|xargs rm -rf7. 替换,如某个文件中根据某个模式替换某行如下命令就是找到FPTitlebar.java这个java文件,找不到// pm.shutDown();,用pm.shutDown();替换之。find . -name FPTitlebar.java -exec sed -i ’s\// pm.shutDown();\ pm.shutDown();\’ {} \;比较难的如下所示:find . -name *.java -exec sed -i ’s\KeyEvent.KEYCODE_2\KeyEvent.KEYCODE_CAMERA \g ’ {} \;find . -name *.java -exec sed -i ’s\KeyEvent.KEYCODE_1\KeyEvent.KEYCODE_CALL \g ’ {} \;找到所有的java文件,用KeyEvent.KEYCODE_CAMERA替换KeyEvent.KEYCODE_28. 编译android源码时实际也是执行shell命令://执行build 目录下envsetup.sh命令. build/envsetup.sh//弹出选择框,分别选择第一个,第一个,第五个,第三个choosecombo 1 1 5 3//设置环境变量export ANDROID_JAVA_HOME=$JAVA_HOME//执行update命令make update-api//起4 个线程同时编译make -j 49. 如果你使用了第三so包,需要在android编译,直接在mk文件中添加如下设置即可:如下所示:1. 声明library名称###############################LOCAL_STATIC_JAVA_LIBRARIES := xstream###############################2. 加入引入的库文件###############################include $(CLEAR_VARS)LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := xstream:xstream-1.3.1.jarinclude $(BUILD_MULTI_PREBUILT)###############################
如何在android程序中执行adb shell命令
***隐藏网址***
解压放到你的电脑系统盘的根目录下
2、运行中,输入cmd进入命令提示符。以下命令均在命令提示符下进行。开始(点开始 在输入框里输入CMD)
3、 输入cd c:\adb回车,进入ADB所在目录
现在就可以进行命令的操作了。
【常用adb shell命令】
1. 显示系统中全部Android平台: android list targets
2. 显示系统中全部AVD(模拟器): android list avd
3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号
4. 启动模拟器: emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800)
5. 删除AVD(模拟器): android delete avd --name 名称
6. 创建SDCard: mksdcard 1024M ~/名称.img
7. AVD(模拟器)所在位置: Linux(~/.android/avd) Windows(C:\Documents and Settings\Administrator\.android\avd)
8. 启动DDMS: ddms
9. 显示当前运行的全部模拟器: adb devices
10. 对某一模拟器执行命令: abd -s 模拟器编号 命令
11. 安装应用程序: adb install -r 应用程序.apk
12. 获取模拟器中的文件: adb pull 《remote》 《local》
13. 向模拟器中写文件: adb push 《local》 《remote》
14. 进入模拟器的shell模式: adb shell
15. 启动SDK,文档,实例下载管理器: android
16. 卸载apk包: adb shell cd data/app rm apk包 exit adb uninstall apk包的主包名 adb install -r apk包
17. 查看adb命令帮助信息: adb help
18. 在命令行中查看LOG信息: adb logcat -s 标签名
19. adb shell后面跟的命令主要来自: 源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。
20. 删除系统应用: adb remount (重新挂载系统分区,使系统分区重新可写)。 adb shell cd system/app rm *.apk
21. 获取管理员权限: adb root
22. 启动Activity: adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。
23、发布端口: 你可以设置任意的端口号,做为主机向模拟器或设备的请求端口。 如:adb forward tcp:5555 tcp:8000
24、复制文件: 你可向一个设备或从一个设备中复制文件, 复制一个文件或目录到设备或模拟器上: adb push 《source》 《destination》《/destination》《/source》 如:adb push test.txt /tmp/test.txt 从设备或模拟器上复制一个文件或目录: adb pull 《source》 《destination》《/destination》《/source》 如:adb pull /addroid/lib/libwebcore.so
25、搜索模拟器/设备的实例: 取得当前运行的模拟器/设备的实例的列表及每个实例的状态: adb devices
26、查看bug报告: adb bugreport
27、记录无线通讯日志: 一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录: adb shell logcat -b radio
28、获取设备的ID和序列号: adb get-product adb get-serialno
29、访问数据库SQLite3 adb shell sqlite3 #cd system/sd/data //进入系统内指定文件夹 #ls //列表显示当前文件夹内容 #rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件 #rm xxx //删除文件xxx #rmdir xxx //删除xxx的文件夹
安卓命令有哪些
安卓Android命令: 主要介绍几个特有的。 getprop 返回Android的所有系统属性。 getevent 打印所有的键盘和触摸事件 logcat 输出日志 printenv 系统环境变量 am 运行start/broadcast/instrument(instrument可以运行自动化测试代码,其它的还没有试过),从 android的命令行开始。 首先是获取root权限 手机必须先root ,没有root的话可以下载刷机精灵root (某些刷机精灵没办法root的手机,问百度吧) adb shell//进入手机的超级终端 su//以管理员身份运行 查看sdcard文件 cd XXX //进入文件夹 cd.. //返回上一层 ls //列表显示当前文件夹内容 卸载软件 一般软件卸载 adb uninstall 包名 系统软件卸载 adb shell su cd system/app rm package exit exit adb uninstall 包名 安装软件 一般安装方式 安装软件 adb install apk文件名称.apk 重新安装软件 adb install -r apk文件名称.apk 非正常安装方式 $ adb push D:\myfile.apk /sdcard/ // 上传要安装的文件,为安装做准备。 $ adb shell $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。 # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写 # cat /sdcard/ContactsHub.apk 》 /system/app/ContactsHub.apk 如果还不行,重启手机 其他命令 adb help //可以查看所有命令 adb remount //重新挂载文件系统 adb reboot //重启手机 adb reboot recovery //重启手机到recovery界面 #rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件 #rm xxx //删除文件xxx #rmdir xxx //删除xxx的文件夹 adb logcat //查看手机上的运行日志,可以用来查错 adb devices //查看手机是否连接,以及连接了几台手机 adb pull s d //把文件从手机复制到电脑上(s为源文件,d为目标文件) adb push s d //把文件从电脑复制到手机上(s为源文件,d为目标文件)
更多文章:
if和elseif的用法(标题 单个if语句、ifelse语句以及ifelse if语句有何区别如何选用)
2024年6月4日 16:16
vlookup公式不出数值(为什么我用vlookup函数提取不了数值)
2024年10月6日 14:10
this love韩国歌音译(this love 的韩文歌词~)
2024年7月25日 06:10
simulink仿真时求解平均值(请问在Simulink环境下,如何求一个变化的数值的平均数)
2024年6月13日 07:07
vue使用session(vue+django使用session的用户验证怎么做)
2024年7月14日 06:25
java字符串比较大小(java中如何比较两个非数字的字符串的大小)
2024年7月19日 13:22
java web api接口开发实例(怎么用JAVA制作网站API 接口求原理及步骤!谢谢)
2024年4月2日 16:06
boolean类型参与数据类型转换(一个Java基础问题 是否允许做以下的类型转换如果允许,给出转换结果 boolean b=tr)
2024年6月12日 16:01
批量修改文件名app(有没有可以批量更改文件名字的软件我只想在文件名字前面加上统一的序号!)
2024年7月9日 14:46
SQL中分布式事务是什么(sql是分布式数据库管理系统)?谈谈分布式事务有哪些特点
2024年10月22日 13:15