在开发过程中使用到系统中Framework,已经正确添加了,无论如何都报错,尝试了各种方法,还是报错。
猜想可能是在Xcode中查看系统的Framework时,不小心删除了部分API,但是当时又没有发现这个问题。以至于再次使用此类库时发生报错。
讲道理啊,一般系统API文件右上角都会有个黑色的小锁,这种情况是不可以编辑文件,即使不小心编辑后也会弹出提示框询问。
于是我随便进到一个API头文件中,居然可以编辑。那么可能就找到原因了,重新下载了个Xcode替换当前的,问题解决了。
为了防止这样的事再次发生,在Xcode中随意找个系统Framework,右键Show in Finder,然后将Frameworks目录下文件修改为只读权限:
sudo chmod -R a-w *
再打开文件时,发现右上的小黑锁又回来。如果想恢复目录的读写权限执行:
sudo chmod -R 775 *
扩展
具体权限:
r(read):表示可读取权限,用数字4表示
w(write):表示可写入权限,用数字2表示
x(excute):表示可执行权限,用数字1表示
权限范围:
u(user):文件所有者
g(group):文件所有者所在群组
o(other):文件所有者及群组以外的用户
a(all):即全部的用户,包含拥有者,所属群组以及其他用户
操作符号:
+
添加某个权限。
-
取消某个权限。
=
赋予给定权限并取消其他所有权限
修改权限的命令格式:
chmod [<权限范围><权限操作><具体权限>] [文件或目录…]
例子:
chmod 775 file
chmod u=rwx,g=rwx,o=rx file
总结
合理的使用文件读写操作权限,可以降低我们在工作中因为误操作引起的问题。
网友评论