【问题标题】:Can I edit files inside the Android ADB shell?我可以在 Android ADB shell 中编辑文件吗?
【发布时间】:2013-11-28 05:53:57
【问题描述】:

在 android shell 中,有没有办法可以编辑文件?

为了编辑.rc之类的文件和类似的脚本,我目前使用adb pull来拉它们,然后编辑它们,然后将它们推回adb push。这肯定是低效的。

有没有办法可以在 android shell 中编辑这些文件(就像 Linux shell 中的 vim 编辑器)

我在我的设备上拥有 root 权限。因此,如有必要,我可以安装 root 应用程序。

【问题讨论】:

    标签: android editor


    【解决方案1】:

    您可以使用以下方法创建文本文件:

     adb shell
     $ cat > filename.txt
    

    您可以使用以下方法向文本文件添加行:

     $ cat >> filename.txt
    

    这两个命令都可以使用ctrl-D 终止。

    【讨论】:

    • 如果没有更好的答案,我为你被否决感到难过:) 用echo "..." > filename 解决了我的问题。
    • 我可以在运行 JB 的 Sony Xperia 上使用 vi。
    • echo 'right click past the content of the file' > filename.txt 使用 'insted of " 表示多线。
    【解决方案2】:

    您可以从 F-Droid 商店安装 BusyBox,如果您的设备已植根,则可以使用 vi 编辑文件。

    adb shell
    busybox vi /sdcard/Download/test.txt
    

    【讨论】:

      【解决方案3】:

      我还注意到默认的shell是sh,输入bash后我可以使用nano

      【讨论】:

      • 如何输入bash
      • 我的意思是输入“bash”并点击“enter”,但最近我注意到我的建议并不总是有效的。不同的手机有不同的设置,有些有 bash 有些没有。我只是尝试一切,直到找到有用的东西:“bash”、“busybox”、“toybox”,最后我使用adb pulladb push 在手机和我的电脑之间移动文件。
      • bash 在我的棉花糖 ROM 上不可用。
      【解决方案4】:

      Android 版 vi 的简化版本包含在 Busybox 中。假设您运行的是 Windows,一旦您安装了 Busybox(并且您确实需要 root 权限才能这样做),我建议您按照https://stackoverflow.com/a/29033010/5025060 的说明在您的计算机上完成全屏文本编辑Windows PC 屏幕上的 Android 设备。

      【讨论】:

      • @Shubashree,很抱歉我的回答不清楚:我建议您在 Android 设备上安装 Busybox(单击 Busybox 上面的链接这样做)。
      【解决方案5】:

      虽然没有回答具体问题,但我会说 Play 商店中有一个名为 Termux 的应用程序适用于无根设备。只有200KB,支持vi

      【讨论】:

      • 这个问题是关于用 vi 在 ADB shell 中编辑文件
      • 我注意到了。谢谢。不知道我在想什么。我会编辑它。
      【解决方案6】:

      我发现在我的应用程序中编辑文件的最佳方法是使用 AndroidStudio 的设备文件资源管理器。因为 Shell 刚刚收到“拒绝访问”错误。

      在那里,您双击打开文件并将其保存在本地环境中,然后将此修改后的版本上传到 Android 设备。为此,只需右键单击目标文件夹并选择上传选项(下图)。

      我希望这对某人有帮助:)

      【讨论】:

        【解决方案7】:

        Deepak 的回答(使用cat >>>)非常适合从头开始创建文件或附加到文件。

        要更改现有文件的一部分,sed 是另一种选择,在没有 vi 的手机上:

        $ sed -i 's/old_regex/replacement/' filename.ext
        

        【讨论】:

          猜你喜欢
          • 2022-01-25
          • 1970-01-01
          • 1970-01-01
          • 2021-12-25
          • 2011-10-23
          • 1970-01-01
          • 2014-05-25
          • 1970-01-01
          • 2017-06-30
          相关资源
          最近更新 更多