adb 创建文件夹
时间: 2025-05-30 20:05:08 浏览: 26
### 使用 ADB 命令创建文件夹
在 Android 开发中,`adb shell mkdir` 是一种常用的方法来通过命令行在设备上创建文件夹。然而,在实际操作过程中可能会遇到权限不足 (`Permission denied`) 的问题。以下是关于如何正确使用 `adb shell mkdir` 创建文件夹的详细说明。
#### 权限问题及其解决方案
当尝试执行 `mkdir` 命令时如果收到 `Permission denied` 错误,则可能是因为目标路径所在的分区未授予写入权限[^1]。在这种情况下,可以采取以下措施:
- **切换到 root 用户**:某些目录仅允许超级用户访问。可以通过运行 `adb root` 将 ADB 提升至 root 权限后再重新连接设备并重试。
```bash
adb root
adb remount
```
- **更改目标路径**:部分敏感区域(如 `/data/data/`)通常受到严格保护。可以选择其他可写的公共存储位置,例如 `/sdcard/` 或者应用专属沙盒目录。
#### 正确语法示例
假设需要在一个特定的应用程序包名下的私有数据区创建名为 “database” 的新文件夹,但由于缺乏适当授权而失败了。那么应该调整策略为下面这样:
```bash
generic_x86_arm:/ $ cd /sdcard/
generic_x86_arm:/sdcard $ mkdir my_database_folder
```
或者对于拥有更高权限的情况,
```bash
generic_x86_arm:/ # su
generic_x86_arm:/ # mkdir /data/data/com.example.waibucunchu/database
```
注意这里加上的 `su` 指令代表请求提升到超级管理员身份再继续后续动作。
另外值得注意的是 Java 中也有类似的函数用于处理本地磁盘结构变化[`mkdir()` vs `mkdirs()`][^3] ,其中区别在于后者能够递归地构建整个链条直至末端节点存在为止 。不过这属于编程层面考虑范畴而非单纯依赖 Shell 脚本完成的任务范围之内 。
最后附带一个小技巧批量生产多个嵌套层次分明的数据集实例演示脚本供参考学习 :
```bash
for k in {0..9} ; do
mkdir "folder$k"
for i in {1..10}; do
echo "" > "folder$k/file${i}.txt"
done;
done
```
此段代码片段展示了怎样利用简单的循环逻辑快速搭建起复杂但规整有序的小型测试环境出来 [^4].
阅读全文
相关推荐


















