
在最后一部分中,我们了解了基本的Termux命令,建立了与PC的SSH连接,学习了如何创建别名,并安装了一些有用的实用程序。 这次,我们必须走得更远,您和我:
- 了解Termux:API
- 安装Python和nano,还要写“ Hello,world!” 在python中
- 我们了解bash脚本并使用Termux编写脚本:API
- 使用bash脚本,Termux:API和Python,我们将编写一个简单的程序
既然我们现在了解了输入命令的作用,那么从下一步开始,我将不再详细描述每个动作,但是,只要有困难,我就一定会进行解释。
我经常使用别名,因此这部分使用的缩写如下所示:
alias updg='apt update && apt upgrade' alias py='python'
计划已准备就绪,您可以开始! 当然,不要忘了“魔术选项卡”( 请参阅第1部分 )。
第4步
深入兔子洞Termux:API
API这个词对于编码人员的心脏来说有多少
如果我们不涉及Termux:API的主题,那么我们的所有步骤都可以简化为简单地重新介绍一些手册,例如Linux for Dummies,正如在第一部分的注释中正确指出的那样。
首先,从Google Play市场安装Termux:API(重新启动Termux并没有问题):

接下来,我们需要在Termux控制台中安装API包:
updg
对于实验,我使用Android 5.1.1,对于Android 7所有者,我需要通过转到“设置”>“受保护的应用程序”来“保护” Termux:API,否则诸如termux-battery-status
类的API调用将挂起。 (请参阅项目Wiki )
现在,将仔细研究获得的功能。 Termux:API的最新和详细描述可以在项目wiki上找到。 我将尝试选择最直观,最有趣的方式,以便将来获得独立工作的机会。
Termux的一些示例:API
- 端子电池状态
返回电池状态

- 白蚁亮度
将屏幕亮度设置为0至255

- 白蚁吐司
显示临时弹出通知

- 泰勒克斯火炬
打开手电筒

- termux-wifi-scaninfo
返回有关Wi-Fi网络上次扫描的信息

很容易看到返回的值是字符串,字典,字典,通常,Python可以很好地使用这些数据类型,因此下一步就是安装它。
第5步
安装Python和Nano
要安装Python,我们在终端中编写:
updg apt install python apt install python2
现在我们已经安装了2和3个Python。
在撰写本文的过程中,我发现了另一个比vim更受我欢迎的nano文本编辑器,让我们安装它:
apt install nano
使用它比vim容易,并且nano具有更用户友好的界面。 在Android设备上,vim仍然更方便。
Termux中的Python中的HelloWorld
总的来说,您可以不用此项目,但是将Python放在Termux中,而我认为不写HelloWorld是不好的语言。
我的目标不是教任何Python,所以那些不认识的人可以简单地复制代码(或者自己学习,有足够的文献资料),而有知识的人可以自己做。 我将“默默地”展示一种无需编辑器即可在终端中输入文本的方法。
cat >hello-world.py

如果在输入过程中没有发现错误,并且已经按Enter键,那么您将无法转到上一行。为此,请按Ctrl + D结束输入(您可以完全中断Ctrl + Z)并从头开始重复所有操作。 由于我们使用了“>”,因此文件将被完全重写。 因此,如果不确定不能立即编写代码而没有错误,建议不要使用此输入法。
第6步
Bash脚本
Bash脚本是自动化终端工作的好方法。 该脚本是扩展名为.sh(扩展名是可选的)的文件,其中包含一组终端命令,我们已经研究了其中一些命令。 这是大多数命令的列表 ,所有命令都可以正常工作,但是请注意,这是“成人” Linux列表,而不是Termux,但这对于bash脚本来说是个好东西 。
使用脚本,您可以自动化几乎所有单调的动作。 我们将编写最简单的bash脚本,以显示他创建的变量的值,我将再次使用cat,可以使用普通的文本编辑器,而想要进行自我训练的人可以使用echo。
cat >test.sh export str=", !"

一种友善的人正确地指出,如果在同一脚本中使用变量,则
export
命令是多余的,因为它将变量带到环境中,也就是说,使其在脚本外部可以访问,从而占用了额外的内存。 因此,在运行
test.sh
我们可以从命令行访问
$str
变量。
带有Termux的Bash脚本:API
让我们写一些与臭名昭著的HelloWorlds不同的东西,但是一样没用。 我们的脚本将是:
- 执行termux-battery-status API请求
- 将收到的数据保存到test.txt文件
- 在屏幕上显示文件中的数据
- 执行之前编写的hello-world.py程序
- 将从程序接收的数据写入test.txt文件
- 在屏幕上显示文件中的数据
- 将数据从文件传输到剪贴板
- 显示剪贴板内容
- 显示带有剪贴板数据的弹出消息
首先,创建一个工作文件夹,并将hello-world.py复制为test.py,在该文件夹中创建test.sh和test.txt文件:
mkdir bashscript cat hello-world.py >> bashscript/test.py cd bashscript/ touch test.sh test.txt
现在,以任何方便的方式,将脚本写入test.sh文件:
现在,在bashscript文件夹中,我们编写了./test.sh,我们在Android设备的终端中观察到了:

因此,我们编写了计划的bash脚本。 您可以将其与输出到控制台的信息(关于每个动作的执行情况)(使用echo)进行稀释,我将其留给读者。
步骤7
让我们做些有用的事
比较有用
我们制定职权范围
启动后,应用程序应将文件中的随机行放在剪贴板上,并通过弹出消息对此进行通知。
我们将以bash脚本为基础,使用Python例程从文件中提取随机行。 让我们制定一个脚本工作计划:
- 运行子程序
- 将例程的结果传输到剪贴板
- 显示弹出消息
我们将决定目录和应用程序文件的名称:
- 主目录中的rndstr文件夹
- 源-我们将从中提取行的文件
- rndstr.py-从源文件向控制台输出随机行的例程
- rndstr.sh-脚本文件
我们创建应用程序目录,并移入其中,然后在其中创建文件。
可以使用Termux:API将脚本计划的前两点与管道结合起来,我们得到:
在源文件中,您可以将逻辑上划分为行的任何文本放入,我决定格言如下:
列出源文件 . . . , . . . . . . . . , , . . , . . , . . , . . . . , . . , . . - , . , . , , . . , . . , . . , . . , . , . . . . . , . . - . , . . . . , , . . . , , , . . ! !
我们仍然需要创建一个例程来从源文件中提取随机行。
我们将描述子程序的算法:
- 打开源文件
- 计算打开文件中的行数
- 我们关闭文件(没有太多时间可以打开文件了)
- 在源文件的行数之内生成一个随机整数
- 打开源文件
- 我们在生成的数字的数字下打印一行
- 关闭档案
我们用Python实现该算法(我在Python 3.7下编写):
import random
创建并记录文件后,您需要为rndstr.sh
文件赋予执行权限,并创建别名以快速启动。
alias rnst="~/rndstr/rndstr.sh"
现在在终端中输入rnst
我们在剪贴板上得到了一个随机格言,例如可以用于对应。
所以我们至少写了一些有用的东西。 比较有用。
聚苯乙烯
在最后一步中,我故意不提供屏幕截图,也没有详细分析某些操作,只写文件的内容,以便读者有机会自己工作。
最初,我计划在本系列中展示如何使用nmap,sqlmap,但没有我,已经有很多关于此主题的文章。 如果您希望我继续“逐步完成Termux”,则下面有一项调查,您可以在评论中提出其他建议。