
我使用此命令在adb shell中过滤文件。
1
ls -lR sdcard/folder | grep"ext"
但是我想过滤一些具有相同扩展名的文件并将其拉出。
那么现在,我们如何结合两个命令?
相关讨论
此链接可能有帮助
1
2
adb shell ls sdcard/folder/*.ext | tr '
' ' ' | xargs -n1 adb pull
查看adb拉取多个文件
相关讨论
感谢您的回答。但是当我运行此命令时,我得到了:/ system / bin / sh:tr:找不到/ system / bin / sh:xargs:找不到
您确定在shell会话中没有执行此命令吗?
实际上,我已经阅读了您答案中的链接,但是它对我不起作用。当我通过" adb shell"转到设备的外壳时,键入" tr --help"和" xargs --help",它将在我的命令中返回结果。
问题是我真的不明白为什么它试图在您的设备而不是本地计算机上找到tr和xargs。" adb shell ls sdcard / folder / *。ext"命令将结果返回到终端。如果命令不在adb shell会话中执行,则应该可以解决。确保在shell会话中没有执行提供的命令。
您可以看到我尝试过的图像。实际上,我可以在ubuntu OS的虚拟机中运行此命令。但它在Windows上不起作用。此外,您知道将目标文件夹放在此命令的什么位置吗?
啊,Windows。我建议您将cygwin(cygwin.com)用于此类目的。关于目标文件夹,您可以这样定义:adb shell ls sdcard / folder / *。ext | tr r | xargs -J%-n1 adb pull%
好的答案,但是考虑到评论,有点简洁。您可能需要扩展答案以弄清楚该命令是否适用于Linux(也许也适用于MacOS?),应从shell命令提示符(终端窗口)发出,并假定adb,tr和工具已安装,并且可以在环境路径中访问。
把你要保留的文件cp 到上级或者其它目录,再删除该目录即可,比如a 文件夹中含有b,c(你要保留的)文件,如果目前在a文件夹下,pwd查看当前路径/a/.....cd ..(跳出a文件夹到上级目录)
cp a/b a/c .(当前路径:a上级目录或cp 到其它你知道的地方)
rm -rf a (删除你想删除的a文件夹)
即可!不要删错了!!!!!!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)