我刚试着为我的安卓手机写一个Bash Shell脚本。
当我想要列出在我的安卓手机上的所有文件时,我发现安卓终端不支持find
命令。
因此,我想知道哪种方式是遍历sdcard
文件的最佳方法?
我可能错了,但是对我来说 "find -name __" 运行得很好。(也许只是我的手机。) 如果你只想列出所有文件,可以尝试
adb shell ls -R /
尽管如此,您可能需要root权限。
编辑:
正如其他答案所建议的那样,可以像这样使用ls
和grep
:
adb shell ls -Ral yourDirectory | grep -i yourString
例如。
adb shell ls -Ral / | grep -i myfile
-i
是忽略大小写的选项。 而 /
是根目录。
find
命令,尽管那些具有自定义ROM或其他busybox安装的设备可能会有。 - Chris Strattonadb shell ls /storage
或者 adb shell ls -R --color=always /storage
命令来列出可读目录下的内容。 - mchid打开命令提示符,输入 adb shell
,然后按回车键。
输入 ls
查看文件列表。
adb shell ls -R > junk
列出所有文件并将结果放入文件junk
中,然后您可以通过记事本或其他编辑它,并查看比您想要的更多内容,但也包括您的文件! - DSlomer64只是为了添加完整的命令:
adb shell ls -R | grep filename
这实际上是在Android上非常快速的查找
ls
爬行的每个目录,就像这样:adb shell ls -laR | grep -E "filename|:$"
。 - volpatols -lrta
。 - john Smithadb shell ls -laR | grep 文件名
ls -lR / | grep busybox
如果你知道文件在哪里,你需要一些读写空间。尝试使用闪存驱动器或SD卡。
cd /sdcard
ls -lR / >lsoutput.txt
上传到您的计算机。上传文件。获取一些文本编辑器。搜索busybox。将看到文件所在的目录。
busybox find /sdcard -iname 'python*'
为了更方便访问busybox,您可以采取以下措施:
cd /sdcard
ln -s /where/ever/busybox/is busybox
/sdcard/busybox find /sdcard -iname 'python*'
或者你想放在任何其他地方。
R