1

一个程序递归地创建文件夹。太深,全路径字符串长度大于MAX(getconf ARG_MAX),例如:/A/B/C/A/B/C/A/B/C//A/B/C/A /B/C/A/B/C/A/B/C/A/B/C/A/B/C/A/B/C/A/B/C/A/B/C/A/B /C/A/B/C/A/B/C/A/B/C/A/B/C/A/B/C ……所以“sudo rm -fr /A”表示“地址错误”。

如何创建脚本来处理它?谢谢,

4

2 回答 2

0

如果它是一个单独的磁盘,并且它自己的文件系统安装在 /A,请卸载它并重新格式化它。

如果没有,运行这样的东西(非常未经测试):

cd /A

然后

cd A || cd B || cd C && rm -rf A* B* C*

并继续执行它,按向上箭头重复并再次执行,直到它工作......

祝你好运!

于 2014-03-24T22:53:26.970 回答
0

有趣的问题。

我猜你可以用 Xcode 创建一个命令行工具(文件 -> 新项目 -> 命令行工具,插入代码,然后单击“运行”工具栏按钮)。

int main(int argc, const char * argv[])
{
  @autoreleasepool {

    NSURL *url = [NSURL fileURLWithPath:@"/a/b/c/d/..."];

    NSError *error = nil;
    [[NSFileManager defaultManager] removeItemAtURL:url error:&error];
    if (error) {
      NSLog(@"%@", error);
    }

  }

  return 0;
}
于 2014-03-24T22:49:22.280 回答