Skip to content

文件权限问题

由于MacOS的安全和隐私模块,通过AppStore之外下载的工程文件,容易有权限问题,执行下面的操作,可以给目录授权.

1.点重制文件后发现未能正确恢复备份文件?

一般都是权限导致的,可以把下面的的文件保存为 auth_dir.sh

#!/bin/bash

# 检查参数是否提供
if [ $# -ne 1 ]; then
    echo "用法: $0 <目标目录路径>"
    echo "示例: $0 ./MyProject"
    exit 1
fi

TARGET_DIR="$1"

# 检查目录是否存在
if [ ! -d "$TARGET_DIR" ]; then
    echo "错误: 目录 '$TARGET_DIR' 不存在或不是一个目录"
    exit 1
fi

# 将目录及其内容的所有者改为当前用户(替换为实际目录路径)
sudo chown -R ${USER}:staff ${TARGET_DIR}
sudo chmod -R u+rw,g+rw,o+rw ${TARGET_DIR}

# 递归移除所有扩展属性(跳过不存在的文件)
echo "正在移除目录 '$TARGET_DIR' 及其子内容的所有扩展属性..."
find "$TARGET_DIR" -exec sh -c '
  for file do
    # 先检查文件是否存在
    if [ -e "$file" ]; then
      xattr -c "$file"
    fi
  done
' sh {} +

echo "操作完成: 已处理所有存在的文件(跳过不存在的文件)"
然后执行这个脚本
chmod 777 ./auth_dir.sh
./auth_dir.sh