【问题标题】:How to detect external sdcard using command lines如何使用命令行检测外部 SD 卡
【发布时间】:2013-11-10 17:29:02
【问题描述】:

我正在使用 perl 编写一个脚本来检测设备是否有外部 sd 卡。 我知道有要检查的 Android API 环境,但我无法导入任何 API。

目前,我发现有 /storage/sdcard0(内部)和 /storage/sdcard1(外部)。

第一个问题是,/sdcard/ 和 /storage/sdcard0 有什么区别。他们似乎指向同一个东西。

第二个问题是,如何编写脚本来检测外部 sdcard?即使没有插入 sdcard,目录 sdcard1 的路径仍然存在。没有插入 sdcard 时它只是空的。我可以通过运行命令 'df storage/sdcard1' 来获取 sdcard 的容量但是,解析容量编号和检查大小需要做很多工作。 该设备当前运行的是 4.3,它没有任何 /mnt/extSDcard 或任何指向外部 sdcard 的东西。 如果sdcard没有插入时storage/sdcard1不存在会容易得多,但既然它仍然存在,它就变得非常棘手......

我想知道是否有任何更简单的方法或任何命令行可以在插入 sdcard 时返回 true/false..

谢谢

【问题讨论】:

    标签: android perl command detect


    【解决方案1】:

    我认为这有点太晚了,但我遇到了同样的问题。这就是我现在正在做的事情,但尚未确认工作。

    简而言之,它在外部 sdcard 上使用 df 来检查其大小。如果它是空的,那么它将是 0.00K。用tail修剪结果并用awk提取大小部分。

    当然需要busybox。 在我的设备中是 /storage/external_SD,您可能需要更改它。

    df /storage/external_SD | busybox tail -n +2 | busybox awk '{print $2}'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-09
      • 1970-01-01
      • 2013-05-25
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多