我是新来写 bat 文件,目前,我正在创建一个 bat 文件,以访问adb shell ,并运行其中的可执行文件。例如,我想运行adb shell中的HelloWorld.exe。此外,我没有权限编辑Helloworld.exe以接收输入参数而不是用户输入。
HelloWorld.exe:
#include <iostream>
using namespace std;
int main() {
string name;
int age;
cout << "Enter your name: ";
cin >> name;
cout << "Hello, " << name << "!" << endl;
return 0;
}
字符串
要运行HelloWorld.exe本身,我熟悉我们可以用途:adb shell Helloworld.exe
。但是,我们应该如何将输入管道到可执行文件,我已经尝试使用echo(echo good_guy | adb shell Helloworld.exe
),但它不起作用。
3条答案
按热度按时间qeeaahzv1#
你不需要创建bat文件,你可以创建一个像下面这样的bash文件来在side adb shell中运行。例如:
script
文件,包含以下行字符串
$1是你的第一个参数
$2是第二个参数
并将其放在设备文件夹(/data/local/tmp/)中。然后像下面这样用adb shell运行它
型
运行上述程序后的结果应该是
型
6mzjoqzu2#
这和预期的一样
字符串
所以你的应该也能用
chy5wohz3#
谢谢你的帮助!最后,我们使用
adb shell "(echo test1; echo test2) | /usr/bin/path_to_bin"
。这类似于@Diego托雷斯Milano的管道输入建议