问题标签 [mksh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2265 浏览

android - Android Shell EOF

我为 Android 制作的脚本有一个小问题。我无法让“EOF”在“mksh”中工作。它在 'sh' 和 'bash' 中运行良好,但由于 'mksh' 正在成为 Android 中最常用的,所以我真的需要它才能正常工作。

此示例将导致休闲错误

无法创建临时文件/sqlite_stmt_journals/mksh。(随机):没有这样的文件或目录

我见过其他人有这个问题,但没有真正的解决方案。

0 投票
3 回答
6831 浏览

android - 如何以毫秒分辨率测量来自 adb shell 的时间?

如何以毫秒或纳秒的分辨率测量 adb shell 的时间?

使用date +%.%Nfrom adb shell 返回1401546811.N(秒分辨率)而不是1401547289.231869798(纳秒分辨率)。

如何从 adb shell 获得毫秒或纳秒的分辨率?

是否有一些终端程序可以用来给我这个?我能够使用System.currentTimeMillis()System.nanoTime()从 Android 应用程序代码本身来测量时间,但我还需要来自内部的东西adb shell

0 投票
3 回答
4143 浏览

android - 在 adb shell 非交互模式下有别名

嗨,我需要以以下形式运行事物adb shell <command>

当我在 adb shell 中测试所有内容时,它可以工作,因为我能够在.bashrc. 但是,当我这样做时adb shell <command>,没有任何效果,因为.bashrc运行时不使用adb shell <command>,因为它处于非交互模式。

我该如何解决这个问题?我可以adb push向文件系统添加一些文件,以便在adb shell运行时别名会在那里吗?

0 投票
1 回答
197 浏览

arrays - 有没有办法在 mksh 中对数组进行切片?

有字符串${name//pattern/string}${name:pos:len}但我还没有找到任何类似的操作数组的文档。

到目前为止,我一直在使用 shift 和/或 unset 进行简单的操作。唯一可行的替代方法是遍历这些值并重新构建一个新数组,但这是不可取的。

0 投票
3 回答
940 浏览

android - adb shell 正则表达式在本地测试时不起作用

首先,对不起,如果我的问题含糊不清或格式不便。这是我在这里的第一篇文章:D。

我的问题是我有一个脚本,假设test.sh它读取输入,并验证它是否为正整数(本文使用的 reg ex: BASH:测试字符串是否作为整数有效?):

我正在使用 adb shell 在我的 android 设备(小米 Mi3 w)上运行此脚本,并且出现错误:语法错误:=~意外操作符一直显示。

首先,我的正则表达式是否正确?其次,关于如何克服这个语法错误的任何提示?

0 投票
2 回答
2805 浏览

android - Android shell中的“未知错误517”是什么意思?

我正在尝试在 Android shell 中写入字符设备。但是 mksh 对整个操作范围都以“未知错误 517”响应。我尝试使用strace来追踪问题,但它没有帮助。这也发生在 AOS 4.4 中的所有设备节点范围内,但在 4.2 中没有。

这就是我所做的:

该设备在那里,我既可以创建它(mknod)也可以删除它,所以据我所知,这不是权限问题。

我在strace中得到的只是:

查看shf.c文件中的mksh源代码也无法提供任何见解。

我还在EPROBE_DEFERLinux 内核源代码的文件中找到了该标签:../include/linux/errno.h

有什么想法可能导致这个问题吗?

0 投票
2 回答
650 浏览

android - 在 android shell 中使用“printf”作为十六进制值

我正在将我的 shell 脚本(相当大的 shell 脚本)从 bash 移植到 android shell(mksh shell)。

在 Android 中,printf它的工作方式似乎与在其他 Linux 系统中的工作方式不同。

示例代码:

该函数的输出如下。

它正在打印一个非常奇怪的数字。

我从其他帖子和手册页中mksh看到printf不建议在mksh. 我的 shell 脚本非常大,正在大量使用它。所以,我想以某种方式处理这个问题。我有什么选择来处理这个问题?

0 投票
1 回答
264 浏览

case-insensitive - 如何在 mksh 中使文件名匹配不区分大小写

我在 Windows 10 上使用 mksh(MirBSD Korn Shell)。我已经习惯了旧的 UWin ksh,不关心 Win7 上的大小写,并且在 'ls' 没有看到文件时被绊倒了好几次,因为套管:

我试过“set completion-ignore-case on”、“typeset -l”、“shopt -s nocaseglob”和类似的 bash-isms。什么对 ksh 有用?

注意:这不是要求在正则表达式中不区分大小写。谢谢

0 投票
1 回答
2079 浏览

android - adb shell "watch" 命令监控

我正在尝试监视我的 adb shell 中的一些命令,我​​可以去watch adb shell <command>,但是必须连接到 shell 的额外时间让我死了。

Android是否adb shell有自己的版本,watch所以我可以监控一些命令

0 投票
2 回答
168 浏览

android - 循环遍历目录时遇到问题

我正在尝试在 android 上的 magisk 模块中运行我的这部分代码,因此它使用 android mksh shell。

我的目标是跳过 $MODULESPATH 中的 Fontchanger 文件夹,因为 Fontchanger 是我的模块,并且如果该文件夹不是 fontchanger 并且它没有名为 disable 的文件并且它在 $i 中有一个 system/fonts 目录,那么只有这样代码运行。但是,当我安装我的 magisk 模块 zip 时,它会运行此代码检测 $MODULESPATH 中的 Fontchanger 并中止。这与我需要的相反。它需要跳过 Fontchanger 文件夹。

这是代码

提前感谢您的任何帮助