如何解释 `adb` `ls` 命令的数字输出?
How to interpret numeric output of `adb` `ls` command?
在谷歌上搜索了很多如何在 DOS 命令提示符下使用 adb
之后,我终于找到了命令语法来显示我一直在努力处理的实际文件。
命令如下:
C:\Users\Dov>adb ls /data/data/com.dslomer64.servyhelperton/databases
这是输出。
000041f9 00001000 59b7bc7d .
000041e9 00001000 59b5a17d ..
000081b0 00005000 59b72501 Dictionary.dic
00008180 00002210 59b72501 Dictionary.dic-journal
000081b0 00005000 59b6e3c3 TEST2.dic
00008180 00002210 59b6e3c3 TEST2.dic-journal
000081b0 00005000 59b710c8 TEST.dic
00008180 00002210 59b710c8 TEST.dic-journal
耶。
我在 ls
命令中不小心遗漏了 -R
,但很好,因为我得到的列比预期多了 3 列。
这是我的问题,因为它可能与我的问题有关:
数字有哪几列?
因为所有 3 个 .dic
文件都具有相同的中间列值,并且在被 pull
ed 到我的 PC 后也具有相同的大小(20KB)并且因为 20KB 的十六进制是 5000,肯定是中间一栏是size。
但是其他列是什么? Mod/Creation 日期?还有...
第一列是文件mode,第三列是epoch文件创建时间。
来自adb/client/file_sync_client.cpp
bool do_sync_ls(const char* path) {
SyncConnection sc;
if (!sc.IsValid()) return false;
return sync_ls(sc, path, [](unsigned mode, unsigned size, unsigned time,
const char* name) {
printf("%08x %08x %08x %s\n", mode, size, time, name);
});
}
在谷歌上搜索了很多如何在 DOS 命令提示符下使用 adb
之后,我终于找到了命令语法来显示我一直在努力处理的实际文件。
命令如下:
C:\Users\Dov>adb ls /data/data/com.dslomer64.servyhelperton/databases
这是输出。
000041f9 00001000 59b7bc7d .
000041e9 00001000 59b5a17d ..
000081b0 00005000 59b72501 Dictionary.dic
00008180 00002210 59b72501 Dictionary.dic-journal
000081b0 00005000 59b6e3c3 TEST2.dic
00008180 00002210 59b6e3c3 TEST2.dic-journal
000081b0 00005000 59b710c8 TEST.dic
00008180 00002210 59b710c8 TEST.dic-journal
耶。
我在 ls
命令中不小心遗漏了 -R
,但很好,因为我得到的列比预期多了 3 列。
这是我的问题,因为它可能与我的问题有关:
数字有哪几列?
因为所有 3 个 .dic
文件都具有相同的中间列值,并且在被 pull
ed 到我的 PC 后也具有相同的大小(20KB)并且因为 20KB 的十六进制是 5000,肯定是中间一栏是size。
但是其他列是什么? Mod/Creation 日期?还有...
第一列是文件mode,第三列是epoch文件创建时间。
来自adb/client/file_sync_client.cpp
bool do_sync_ls(const char* path) {
SyncConnection sc;
if (!sc.IsValid()) return false;
return sync_ls(sc, path, [](unsigned mode, unsigned size, unsigned time,
const char* name) {
printf("%08x %08x %08x %s\n", mode, size, time, name);
});
}