linux 中的 chmod 与 chown 命令

chown

chown,change owner。更改文件的所属用户及组。

通过 ls 命令,第三第四列便是文件所属用户及用户组。

$ ls -lah .
total 1.2M
drwxr-xr-x 11 shanyue shanyue 4.0K Jun 22 18:42 .
drwxr-xr-x5 rootroot4.0K Jun 24 11:06 ..
drwxr-xr-x2 shanyue shanyue 4.0K Jun 10 15:45 .circleci
drwxr-xr-x2 shanyue shanyue 4.0K Jun 10 15:45 .codesandbox
-rw-r--r--1 shanyue shanyue294 May 222021 .editorconfig
-rw-r--r--1 shanyue shanyue759 Jun 10 15:45 .eslintignore
-rw-r--r--1 shanyue shanyue 8.4K Jun 10 15:45 .eslintrc.js
drwxr-xr-x7 shanyue shanyue 4.0K Jun 14 19:06 .git
-rw-r--r--1 shanyue shanyue 12 May 222021 .gitattributes 

通过 chown -R,可一并将子文件所属用户及用户组进行修改。

# 将 . 文件夹下当前目录的用户及用户组设为 shanyue
# -R:遍历子文件修改
$ chown -R shanyue:shanyue . 

chmod

mode 指 linux 中对某个文件的访问权限。

通过 stat 可获取某个文件的 mode。

# -c:--format
# %a:获得数字的 mode
$ stat -c %a README.md
644

# %A:获得可读化的 mode
$ stat -c %A README.md 
-rw-r--r-- 

在了解 mode 之前,我们先看一下文件的权限。

  • r: 可读,二进制为 100,也就是 4
  • w: 可写,二进制为 010,也就是 2
  • x: 可执行,二进制为 001,也就是 1

而 linux 为多用户系统,我们可对用户进行以下分类。

  • user。文件当前用户
  • group。文件当前用户所属组
  • other。其它用户

再回到刚才的 644 所代表的的释义

# rw-:当前用户可写可读,110
# r--:当前用户组可读,010
# r--:其它用户可读,010
# 所以加起来就是 644
-rw-r--r-- 

而通过 chmod 即可修改用户的权限。

$ chmod 777 yarn.lock 

另外也可以以可读化形式添加权限,如下所示:

# u: user
# g: group
# o: other
# a: all
# +-=: 增加减少复制
# perms: 权限
$ chmod [ugoa...][[+-=][perms...]...]

# 为 yarn.lock 文件的用户所有者添加可读权限
$ chmod u+r yarn.lock 

作业

1.熟悉 cd、pwd、ls、exa、tree 等命令
2.在 ls 单指令列出文件列表时为何不显示 .git 目录,应如何显示
3.在 Node.js 或其它语言中如何获得 pwd
4.在 Node.js 或其它语言中如何获得 ls 子文件列表。参考 fsp.readdirreaddir

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值