我可以编辑android shell(adb shell)中的文件吗

mk.*_*k.. 24 android editor

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

为了编辑类似.rc和类似脚本的文件,我目前正在使用adb pull它们,然后编辑它们然后将它们推回去adb push.这当然效率低下.

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

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

Dee*_*egi 17

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

 $ cat > filename.txt
Run Code Online (Sandbox Code Playgroud)

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

 $ cat >> filename.txt
Run Code Online (Sandbox Code Playgroud)

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

  • 如果没有更好的答案,我为你的投票感到难过:)用"echo"..."> filename`解决了我的问题. (5认同)

Vee*_*ner 8

您可以从F-Droid存储区安装BusyBox,并且如果您已经扎根了设备,则可以vi用来编辑文件。

adb shell
busybox vi /sdcard/Download/test.txt
Run Code Online (Sandbox Code Playgroud)


Lar*_*rsH 7

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

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

$ sed -i 's/old_regex/replacement/' filename.ext
Run Code Online (Sandbox Code Playgroud)


COD*_*EaD 5

Busybox 中包含适用于 Android 的简化版 vi 。假设您运行的是 Windows,一旦您安装了 Busybox(并且您确实需要 root 权限才能这样做),我建议您按照/sf/answers/2032310731/上的说明完成全屏文本从 Windows PC 屏幕在 Android 设备上进行编辑。


Loh*_*HAR 5

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

  • 在那种情况下,我的意思是只输入“bash”并点击“enter”,但最近我注意到我的建议并不总是有效。不同的手机有不同的设置,有些有 bash 有些没有。我只是尝试一切,直到找到有用的东西:“bash”、“busybox”、“toybox”,最后我使用 `adb pull` 和 `adb push` 在手机和我的 PC 之间移动文件。 (2认同)
  • `bash` 在我的库存 Marshmallow ROM 上不可用。 (2认同)