思路简单,做起来不容易。
安卓是linux,利用linux强大的甚至万能的命令行,简单想想就知道很简单。ls,cat ,grep,sed之类的完全可以完成这个任务。
可是在电视 上找不到sed,甚至head,tail也没有,这下彻底歇菜。对安卓不熟悉,也不知道有何替代工具。
甚至想去安装busybox ,就是这一想法,差点直接下载apk安装了,尝试一下T补全命令,竟然发现有busybox ,呵呵,这下简单了。思路决定出路,一点不假。
观察到/system/app目录下,APK文件全部是用大写字母命名,那么非逻辑 排除法可以得到我的2个乱码文件:
ls | grep -v '^[A-Z]' >> tempfile;
grep -v 是非逻辑。
这个tempfile应该包含2行,每一行是一个乱码文件名。用cat查看验证。之后用tail,head取之。
busybox head -n 1 tempfile;
busybox tail -n 1 tempfile;
最后rm 删除即可,由于全部使用自带命令行,我想其字符集处理一样,所以乱码传送也是不会被改变,最后rm也会识别,最关键是核心识别这个文件名。
因为自己尝试了安卓的RE和ES,都能看到这两个乱码文件,但看到的文件名是假象,删除不掉。看到了C乱码,用这个C通配符根本找不到。原因是RE,ES使用API读取系统乱码文件后,自己处理显示 ,但因为一个是GBK/GB2321(因为在windows下用adb传送的),一个是unicoding(不是uft8,是啥不知道),所以显示不正确。
百度尝试了,只找到一些说纯乱码文件必须 恢复系统 才能删除,怎么可能 ,万能的linux,不会做不到的。
阅读(1575) | 评论(0) | 转发(0) |