Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Windows下在adb中运行vi_Android_Windows_Adb_Vi - Fatal编程技术网

Android Windows下在adb中运行vi

Android Windows下在adb中运行vi,android,windows,adb,vi,Android,Windows,Adb,Vi,偶尔,我会想在我的Android设备上编辑一个文件,比如/system/build.prop或/etc/hosts。我发现最简单的方法是: c:\> adb shell $ su # vi /etc/hosts 如果我使用Linux,这很好用。然而,在使用Windows时尝试在手机上运行vi会导致出现带有奇怪字符的borked vi屏幕。我假设这是因为cmd不支持ANSI控制字符 有没有办法解决这个问题(例如,执行此任务的cmd替代方案) 我从来没有遇到过你的确切问题,但这似乎是个不错的

偶尔,我会想在我的Android设备上编辑一个文件,比如/system/build.prop或/etc/hosts。我发现最简单的方法是:

c:\> adb shell
$ su
# vi /etc/hosts
如果我使用Linux,这很好用。然而,在使用Windows时尝试在手机上运行vi会导致出现带有奇怪字符的borked vi屏幕。我假设这是因为
cmd
不支持ANSI控制字符


有没有办法解决这个问题(例如,执行此任务的cmd替代方案)

我从来没有遇到过你的确切问题,但这似乎是个不错的选择。

你可以用它来解决。这是一个改进版的腻子,具有一些额外的功能。其中一个特性就是Android adb支持。要使用它:

  • 选择
    Adb
    作为连接类型
  • 输入
    -d
    (对于单个usb设备)或在主机字段中
  • 利润

基本上你需要的是一条真正的命令行。。。MinGW是Cygwin的替代品,值得研究。

这是2012年对你问题的最新答案。我发现如果我运行Windows PowerShell,我可以在adb shell下执行“vi”

启动PowerShell(使用您的Android SDK位置,而不是我的位置)


我只使用了简单的vi命令,如“o”、“esc”和“:wq”,但它在全屏上运行良好(没有在Windows命令提示符中看到的垃圾)。

我终于找到了一个在Windows 2012 R2中工作的工具。 您需要运行cmder 下载可以找到

然后跑

cmder
转到adb文件夹

cd XXX
然后


正确显示

看起来它应该可以完成任务。了解吗?@MichaelHampton:这几乎可以工作,但不能正确处理钥匙,因此无法进入正常模式。“Borked”。我喜欢这个词。我真的不喜欢cygwin,所以我希望避免它。但这似乎是唯一可行的选择。我无法在Cygwin终端中使用
ESC
vi
,只有这个答案解决了我在Windows 7下试图通过adb侦听器使用全屏应用程序的问题。据我所知,ConEmu没有采取任何措施来解决所描述的问题。我还尝试在Windows的bash下运行
adb shell
,但没有成功。我怀疑问题出在Windows的adb shell命令本身。PuttyRay实现了它自己与adb侦听器的连接,这显然包括全屏终端仿真,而
adb shell
没有。注意:上面,您在主机字段中说使用-d,但是您的快照显示-a作为选项。我使用了-a成功。@代码读取是,-d-a在只有一个设备连接时是等效的。关于亚行壳牌你也是对的。好了,当从Windows连接时,PuttyRay是在Android设备上使用
vi
和其他全屏应用程序的唯一可靠方法。如果您的Android使用WiFi怎么办。那你用什么办法呢?我尝试在
-a
-d
等所在的字段中输入IP地址,但一旦打开它就会崩溃。这很好,但没有adb用于这些内容,并且正常的windows adb仍然会吸收cygwin shell和MSYS。正如您在windows Server 2012 R2 powershell终端中所说,我仍然有垃圾。
cd XXX
adb shell
su
cd /system/etc
vi hosts