shell脚本_牙叔教程源码-程序员宅基地

技术标签: autojs  shell  shizuku  adb  

牙叔教程 简单易懂

目标

用autojs执行shell脚本, 脚本所在目录为 /data/local/tmp

缘起

做息屏运行脚本, 要用到类似的方法,

比如息屏使用adb去调用dex文件, 来达到息屏效果,

两者相同的地方是

  • 都要复制文件到 /data/local/tmp文件夹下
  • 都要修改权限, 命令为 chmod 777 filename 或者 chmod +x filename

环境

手机: Mi 8

Android版本: 10

Autojs版本: 9.0.10

代码讲解

1. 复制文件到 data/local/tmp
cmd = "cp /sdcard/yashu.sh /data/local/tmp/yashu.sh";
r = shell(cmd);
log(r);
// ShellResult{code=1, error='cp: /data/local/tmp/yashu.sh: Permission denied
', result=''}

非常不幸, 没有权限, 复制文件失败,

所以我们需要要提高权限, Shizuku可以提升我们的权限到adb级别,

Shizuku的使用请查阅上一篇教程, 激活Shizuku

将权限提升为adb级别之后, 我们重新复制文件

首先, 检查有没有adb权限

let adbCheck = $shell.checkAccess("adb");
if (!adbCheck) {
  console.log("没有adb权限, 请先使用shizuku激活autojs的adb权限");
  exit();
} else {
  console.log("已有adb权限");
}

复制文件

$shell.setDefaultOptions({ adb: true });
cmd = "cp /sdcard/yashu.sh /data/local/tmp/yashu.sh";
r = $shell(cmd);
log(r);
// ShellResult{code=0, error='', result=''}

查看文件yashu.sh权限

$shell.setDefaultOptions({ adb: true });
cmd = "ls -al /data/local/tmp/yashu.sh";
r = $shell(cmd);
log(r);
// ShellResult{code=0, error='', result='-rw-rw---- 1 shell shell 84 2021-10-15 17:43 /data/local/tmp/yashu.sh
'}

可以看到权限是-rw-rw----, 没有执行权限, 接下来, 我们就添加执行权限

2. 添加执行权限
$shell.setDefaultOptions({
     adb: true });
cmd = "chmod +x /data/local/tmp/yashu.sh";
r = $shell(cmd);
log(r);
// ShellResult{code=0, error='', result=''}

code=0, 0表示没有发生错误, 没有错误就意味着, 命令正常执行,

再次查看文件yashu.sh权限

$shell.setDefaultOptions({ adb: true });
cmd = "ls -al /data/local/tmp/yashu.sh";
r = $shell(cmd);
log(r);
// ShellResult{code=0, error='', result='-rwxrwx--x 1 shell shell 84 2021-10-15 17:46 /data/local/tmp/yashu.sh
'}

可以看到权限是-rwxrwx–x, 有了执行权限, 接下来, 我们就执行这个shell脚本

3. 执行shell脚本

shell脚本内容

#!/bin/bash
echo "牙叔教程 简单易懂"
author="牙叔"
echo "作者: $author"

执行shell脚本的命令

$shell.setDefaultOptions({ adb: true });
cmd = "sh /data/local/tmp/yashu.sh";
r = $shell(cmd);
log(r);
// ShellResult{code=0, error='', result='牙叔教程 简单易懂
// 作者: 牙叔
// '}

备注

息屏运行脚本使用到的命令与执行shell脚本类似, 这也是我写这篇教程的原因,

方便以后复制黏贴

名人名言

思路是最重要的, 其他的百度, bing, stackoverflow, github, 安卓文档, autojs文档, 最后才是群里问问
— 牙叔教程

声明

部分内容来自网络
本教程仅用于学习, 禁止用于其他用途

bilibili

牙叔教程

微信公众号 牙叔教程

在这里插入图片描述

QQ群

747748653
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/snailuncle2/article/details/120788736

智能推荐

第七十四题 UVA10474 大理石在哪儿 Where is the Marble?_如果marble的编码207114,labour-程序员宅基地

文章浏览阅读237次。Raju and Meena love to play with Marbles. They have got a lot ofmarbles with numbers written on them. At the beginning, Raju wouldplace the marbles one after another in ascending order of the number..._如果marble的编码207114,labour

我的世界Java版中怎么改名_我的世界怎么改名字 付/免费改名字教程-程序员宅基地

文章浏览阅读5.1k次。我的世界怎么改名字 付/免费改名字教程。那在我的世界中改名字还是非常费事儿的,那今天就教大家怎么改名字吧!想知道怎么改名字的玩家不妨进来看看哦!希望对大家有所帮助。游戏园我的世界官方群:325049520欢迎各路喜爱我的世界的小伙伴们加入讨论!打开一个文件夹,地址改成C:Users你的用户名AppDataLocalPackagesMicrosoft.MinecraftUWP_8wekyb3d8bb..._微软pcl怎么改名字

box-shadow 与 filter:drop-shadow 详解及技巧-程序员宅基地

文章浏览阅读88次。box-shadow 在前端的 CSS 编写工作想必十分常见。但是 box-shadow 除去它的常规用法,其实还存在许多不为人知的奇技淫巧。喜欢 markdown 版本的可以戳这里。box-shadow 常规用法说到 box-shadow ,首先想到的必然是它能够生成阴影,所以称之为 shaodow ,简单看看它的语法:基础属性语法box-sha..._filter: drop-shadow(100px 0 0 $bg-info);

VS2019/VS2017安装源离线下载,更新,清理,企业版与论坛版重复下载-程序员宅基地

文章浏览阅读959次。VS2019.NET Framework 4.8 SDKhttps://dotnet.microsoft.com/download/thank-you/net48-developer-pack.NET Core 3.0https://dotnet.microsoft.com/download/dotnet-core/3.0预览版需要在Options中的Environment..._vs2017安装下载缓存怎么清除

互联网大脑的情绪,智商和梦境-互联网神经学系列第四篇_"互联网大脑如何产生\"梦境\"并形成元宇宙"-程序员宅基地

文章浏览阅读1.3k次。既然互联网正在形成与人类大脑高度相似的组织结构,那么互联网也应该具备心理学现象,显示出喜怒哀乐情绪,智商,知觉、认知,智商等现象。互联网神经心理学(Internet neuropsychology)就是从互联网的类神经结构角度分析互联网大脑的心理学问题,研究互联网是如何反映现实世界信息,如何反映社会关系,如何产生属于互联网大脑的类心理活动。_"互联网大脑如何产生\"梦境\"并形成元宇宙"

安装成功了的ros系统,突然提示未安装ros_catkin : 依赖: python-catkin-pkg 但是它将不会被安装 e: 无法修正错误-程序员宅基地

文章浏览阅读1.1w次,点赞6次,收藏18次。之前一直用的好好的ros-kinetic,今天输入roscore..提示未安装,试了其他指令,也是未安装 百度了一下没找到同样的问题,记录一下ada@ada-HP-Spectre-x360-Convertible-13-ae0xx:~$ roscore程序“roscore”尚未安装。 您可以使用以下命令安装:sudo apt install python-roslaunch首先想..._catkin : 依赖: python-catkin-pkg 但是它将不会被安装 e: 无法修正错误,因为您要

随便推点

outlook2013升级_如何在Outlook 2013中创建和管理联系人-程序员宅基地

文章浏览阅读1.2k次。outlook2013升级Outlook isn’t much use if you don’t have contacts. Sure, you can enter email addresses as you go, but that’s time-consuming and error-prone. It’s better to have your contacts already in O..._outlook2013邮箱能使用本地通讯录地址

Pycharm下载与安装教程_pycharm 下载-程序员宅基地

文章浏览阅读5.6w次,点赞84次,收藏551次。PyCharm是一种Python IDE(Integrated Development Environment,集成开发环境)​ PyCharm拥有一般IDE具备的功能,比如, 调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制_pycharm 下载

web开发中,后台数据获取到了,前端显示不出来_java-web能拿到数据库内的数据但是不能显示在前端-程序员宅基地

文章浏览阅读2.3w次,点赞12次,收藏13次。一开始我以为是后台没有获取到数据,写了几个输出语句测试发现数据是能获取到的,那就是显示的问题,检查了各个属性发现都是对的,后来突然发现我的遍历显示的地方出现了警告,这才注意到,忘记加<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>加了之后立马就显示正常了。..._java-web能拿到数据库内的数据但是不能显示在前端

【渝粤教育】广东开放大学 中国文化文学通论 形成性考核 (25)_《采薇》曾被古人视为《诗经》中最好的篇章。-程序员宅基地

文章浏览阅读341次。选择题题目:《楚辞》是《诗经》以外先秦诗歌的另一部总集。题目:知我者,回答题目:《采薇》曾被古人视为《诗经》中最好的篇章。题目:“楚辞”是战国时期产生于蜀地的一种诗歌样式。题目:《颂》诗包括《周颂》、《鲁颂》和《齐颂》。题目:若有人兮山之阿,回答题目:身既死兮神以灵,回答题目:回答题目:回答题目:《楚辞》是我国古代第一部诗歌总集。题目:“楚辞”最为明显的特征是带有“兮”字的三字句或四字句。题目:宋玉是除屈原以外创作成就最高的“楚辞”作家。题目:回答题目:《诗经》分为《风》、《雅》_《采薇》曾被古人视为《诗经》中最好的篇章。

Solaris 初步设置(转)-程序员宅基地

文章浏览阅读1.3k次。Solaris 初步设置(转)  简介  这篇文档包含了你用solaris和Sun平台工作时所需要的最重要的20%的技术。它能处理你所遇到的80%的问题。  这篇文档并不打算覆盖Solaris处理环境的细节,也不会包..._solaris11 dev/dsk

常见经典目标检测算法-程序员宅基地

文章浏览阅读1.1k次,点赞41次,收藏9次。R-CNN大大提升了目标检测的精度,但速度很慢。此后,Fast R-CNN和Faster R-CNN对原始R-CNN进行了改进,Faster R-CNN通过RPN网络学习提取候选区域,实现了端到端的目标检测。近年来,目标检测技术不断进步,涌现出了许多新的算法和模型,如RetinaNet、RefineDet、CenterNet等,进一步提升了目标检测的精度和效率,使得目标检测在越来越多的应用场景中得到应用。多年来,研究者们提出了许多经典的目标检测算法,下面我们就来介绍几种常见的经典目标检测算法。

推荐文章

热门文章

相关标签