Skip to content

Commit

Permalink
feat: [每日一题] 2019-11-14 - 删除文件是否需要对该文件具有写权限,为什么? (#61)
Browse files Browse the repository at this point in the history
每日一题 - 删除文件是否需要对该文件具有写权限,为什么?
  • Loading branch information
azl397985856 committed Nov 26, 2019
2 parents 8852db4 + b836b4f commit c8e39cb
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 35 deletions.
27 changes: 27 additions & 0 deletions docs/daily/2019-11-14.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
## 每日一题 - 删除文件是否需要对该文件具有写权限,为什么?

### 信息卡片

- 时间:2019-11-14
- tag:`OS`

### 题目描述

删除文件是否需要对该文件具有写权限,为什么?

### 参考答案

删除文件不需要该文件的写权限,需要文件所在目录的写权限以及执行权限。

因为删除文件修改的该文件父级即其所在目录的内容,所以需要目录的写权限。
同时,删除文件先要进入到目录,进入是目录的一个操作,所以需要该目录的执行操作。

##### bash 验证

```bash
mkdir a && touch a/b #新建a目录,a下有b文件
chmod -w a && rm a/b #去掉a的写权限,尝试去删除a/b,报 rm: a/b: Permission denied,说明删除文件需要文件所在目录有写权限
chmod +w a && chmod -w a/b && rm a/b #恢复a写权限,去掉b写权限,尝试去删除b, 删除成功,说明删除文件不需要写权限
touch b && chmod -x a && rm a/b #去掉a的执行权限 报rm: a/b: Permission denied,说明删除文件需要目录的执行权限

```
58 changes: 23 additions & 35 deletions docs/daily/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
## 每日一题
每日一题是在交流群(包括微信和qq)里进行的一种活动,大家一起

每日一题是在交流群(包括微信和 qq)里进行的一种活动,大家一起
解一道题,这样讨论问题更加集中,会得到更多的反馈。而且
这些题目可以被记录下来,日后会进行筛选添加到仓库的《编程题》模块。

## 综合认领区

这里你可以看到所有的每日一题的状态信息。地址: https://github.com/azl397985856/fe-interview/projects/1

如果想要认领“未认领”的题目,请参考下方的认领步骤。
Expand All @@ -12,44 +14,50 @@

1. 首先到领取区查看有哪些待领取的,传送门https://github.com/azl397985856/fe-interview/projects/1
2. 选择一个你感兴趣的
3. 然后到对应issue下留言“认领”
3. 然后到对应 issue 下留言“认领”
4. 这个时候我会把你领取的从”待领取”移动到”进行中”,并把你分配为解决者
5. 开始整理,关于格式可以参考:https://github.com/azl397985856/fe-interview/pull/6/files
6. 整理完成你可以提一个pr
6. 整理完成你可以提一个 pr
7. 我合并之后会将其从”进行中”移动到”已合并”
8. 你会成为项目的”贡献者”

注意:

题目描述以及优秀答案可以从issue的讨论中收集
题目描述以及优秀答案可以从 issue 的讨论中收集

### 历史汇总

#### [写一个debounce的装饰器](./2019-11-25.md)
#### [写一个 debounce 的装饰器](./2019-11-25.md)

tag: `编程题`

时间: 2019-11-25

#### [以下关于Javascript执行引擎描述正确的是](./2019-09-24.md)
#### [删除文件是否需要对该文件具有写权限,为什么](./2019-11-14.md)

tag: `OS`

时间: 2019-11-14

#### [以下关于 Javascript 执行引擎描述正确的是](./2019-09-24.md)

tag:`阿里前端校招笔试`

时间:2019-09-24

#### [【编程题】实现高阶函数combinedFetcher](./2019-09-02.md)
#### [【编程题】实现高阶函数 combinedFetcher](./2019-09-02.md)

tag:`编程题`

时间:2019-09-02

#### [实现querySelector](./2019-09-11.md)
#### [实现 querySelector](./2019-09-11.md)

tag:`编程题` `造轮子`

时间:2019-09-11

#### [如何令a ==1 && a== 2 && a==3 返回true](./2019-08-26.md)
#### [如何令 a ==1 && a== 2 && a==3 返回 true](./2019-08-26.md)

tag:`开放问题` `值比较`

Expand All @@ -61,19 +69,19 @@ tag:`位运算` `开放问题` `数学`

时间:2019-08-23

#### [100 * 100 的 Canvas 占内存多大](https://mp.weixin.qq.com/s/EGgsMBjGCG8l9JViYxvX3g)
#### [100 \* 100 的 Canvas 占内存多大](https://mp.weixin.qq.com/s/EGgsMBjGCG8l9JViYxvX3g)

tag:`图像` `开放问题`

时间:2019-08-21

#### [实现一个简单的移动端debug工具](./2019-08-14.md)
#### [实现一个简单的移动端 debug 工具](./2019-08-14.md)

tag:`开放问题` `设计`

时间:2019-08-14

#### [数值0的正负判断](./2019-08-13.md)
#### [数值 0 的正负判断](./2019-08-13.md)

tag: `Number`

Expand Down Expand Up @@ -115,15 +123,15 @@ tag: `非对称加密` `加密算法`

时间: 2019-07-29

#### [页面注入50万个li怎么做提升性能](./2019-07-26.md)
#### [页面注入 50 万个 li 怎么做提升性能](./2019-07-26.md)

tag: `性能优化` `开放问题`

时间: 2019-07-26

#### [以下四个promise有什么不同](./2019-07-25.md)
#### [以下四个 promise 有什么不同](./2019-07-25.md)

tag: `ES6 ` `Promise`
tag: `ES6` `Promise`

时间: 2019-07-25

Expand All @@ -132,23 +140,3 @@ tag: `ES6 ` `Promise`
tag: `Array`

时间: 2019-07-22




















0 comments on commit c8e39cb

Please sign in to comment.