4

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

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

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

4

3 回答 3

14

如果您的 android 设备已植根,您可以将别名添加adb shell/system/etc/mkshrc文件中。

于 2014-10-10T01:27:14.593 回答
0

一种方法是在单个 ADB 命令中发出多个 shell 命令。您可以将它们放在一个字符串中,并用分号分隔它们,因此:

adb shell "alias foo bar ; export MY_VARIABLE=/path/to/somewhere ; my_executable "

此处至关重要,"请确保它们正确配对。你可以这样运行.bashrc,因此:

adb shell "source /path/to/.bashrc ; my_executable"

于 2018-12-03T21:41:41.753 回答
-3

您可以编写一个 bash 脚本来设置别名,然后执行您的 shell:

#!/usr/bin/bash
. $HOME/.bashrc
adb shell $@
于 2014-10-18T15:35:25.717 回答