linux与unix_shell编程学习笔记(一)

一、        文件的权限

1、 文件一经创建就对应三种访问方式

  • 读(r),可以查看文件的内容
  • 写(w),可以编辑和删除文件
  • 执行(x),文件是一个(shell脚本等)程序,可以执行

2、 按照针对的用户,文件的权限可分为三类:

  • 文件属主,创建该文件的用户
  • 同组用户,拥有该文件的用户组中的任何用户
  • 其他用户,即不属于拥有该文件用户组的某一用户

每种用户下都对应三种访问类型。

下面是使用ls –l 命令显示的文件列表


依次来看:

1.      total  683560  

汇总了该目录下所有文件的大小以及一级目录的大小,不包含下级目录。

将下面6中的数值相加转化为K字节的数据总和。(由于total实现的计算方法不会是简单的相加,结果会稍有偏差)

注:解释不是很确定,查了很多资料,觉得这个比较准确

2.      drwxr-xr-x一共十位

[1]d  是文件类型

[2-4]rwx  这三位是设定文件属主对文件的访问方式

[5-7]r-x   这三位是设定同组用户对文件的访问方式

[8-10]r-x  这三位是设定其他用户对文件的访问方式

3.      3  这是该文件硬链接的数目

  • 如果是一个文件不是目录,此时这一字段表示这个文件所具有的硬链接数
  • 如果是一个目录,则第2字段表示该目录所含子目录的个数,不包括文件(对于一个空目录,则第2字段的数字是2。因为每个目录都有一个默认的指向它上级目录的子目录和指向他本身的一个子目录)

4.      root 文件的属主用户

拥有该文件的用户

5.      system 文件属主用户所在的缺省组

一个用户可能有多个组,但都会有一个主组,这里就显示的是这个默认的主组

6.      256  文件的长度(单位是字节)

  • 如果是一个文件不是目录,则指这个文件的大小
  • 如果是一个目录,则指这个目录的大小(不包括其下面的子目录,子文件的大小,目录是一个特殊的文件也有自己的大小)

7.      Jul 13 15:01  文件的最近更新时间

文件(或目录)的最近访问(或修改)时间

8.      ese  文件名

如果是一个符号链接,那么会有一个 “->"箭头符号,后面根一个它指向的文件名

 

3、 文件类型

 

字母

含义

d

directory

目录或者是特殊文件(保存其他文件或目录的相关信息)

-

 

普通文件

l

link

链接文件,相当于windows中的快捷方式

b

block

块设备文件,一般置于/dev目录下,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件。没有文件大小,只有一个主设备号和一个辅设备号。一次传输数据为一整块的被称为块设备,如硬盘、光盘等。最小数据传输单位为一个数据块(通常一个数据块的大小为512字节)

c

character

字符设备文件,一般置于/dev目录下,一次传输一个字节的设备被称为字符设备,如键盘、字符终端等,传输数据的最小单位为一个字节。

p

pipe

命令管道文件,与shell编程有关的文件

s

sock

sock文件,与shell编程有关的文件。

 

4、 硬链接,软链接

链接文件的概念类似于windows里的快捷方式。多个连接文件同时指向一个源文件。链接文件分为硬链接或符号链接两种。

  • 硬链接:操作系统不区分链接创建的先后顺序,同一个文件所有的链接文件都是等价的,若一个文件存在两个链接,那么除去一个链接还可以通过另外一个链接来访问该文件,也可以除去创建链接时用到的文件,但只要还有一个链接存在,就可通过该连接访问文件。
  • 符号链接(软链接):即建立一个独立的文件,这个文件会让数据的读取指向它链接的文件内容。

5、 文件访问方式

5.1 基本了解

2. drwxr-xr-x这里除了第一个字符d,指目录后面就是对不同用户访问权限的设置

1

2

3

4

5

6

7

8

9

r|-

w|-

x|-

r|-

w|-

x|-

r|-

w|-

x|-

      13位:设置所属用户的权限,如上例子,具有读、写、执行的权限

      46位:设置同组用户的权限,如上例子,具有读、执行的权限

      79位:设置其他用户的权限,如上例子,具有读、执行的权限

      注:“-”说明该位的权限禁用了

5.2 修改权限

修改文件的权限使用chmod命令,有两种模式:

  • 符号模式

命令的格式:chmod  用户  操作  权限 文件名

例如:chmod  o + r  myfile 给其他用户增加对myfile读的权限

“用户”有四种情况:

1》    u 所属用户

2》    g 同组用户

3》    o 其他用户

4》    a 所有用户(相当于ugo

“操作”三种情况:

1》  增加权限

2》  取消权限

3》  设定权限

“权限”三种情况:(其他特殊的情况,暂时用不到,以后再学习)

1r  读权限

2写权限

3x  执行权限

 注:可以将这些符号组合使用,下面举几个例子

chmod  go+r myfile  myfile给其他用户和同组用户增加读的权限

chmod  g+w o-r myfile myfile取消其他用户的读权限,增加对同组用户的写权限

  • 绝对模式

命令的格式:chmod  模式  文件名

例如: chmod  640  myfile

注:对于每一个权限位都是一个八进制的数

八进制数

含义

八进制数

含义

0400

属主用户读权限

0010

同组用户执行权限

0200

属主用户写权限

0004

其他用户读权限

0100

属主用户执行权限

0002

其他用户写权限

0040

同组用户读权限

0001

其他用户执行权限

0020

同组用户写权限

 

 

  计算模式方法       

属主用户

同组用户

其他用户

rwx

rwx

rwx

4+2+1

4+2+1

4+2+1

举几个例子:

chmod 760 myfliemyfile的属主用户赋予读、写、执行权限,同组用户读、写权限,其他用户不赋予任何权限

chmod 644 * 对目录下所有的文件进行设置权限,如果要将目录下的包括各个子目录下的所有文件都设置,则可以使用-R参数

 注:相比绝对模式,符号模式可以对单个权限位进行设置。命令虽然比较长,但使用起来还是比较方便的。

6、 目录的权限

r

w

x

可以列举其中的内容

可以在其中创建删除文件

可以进入和搜索该目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常的全,绝对不会让你后悔。 目 录 译者序 前言 第一部分 shell 第1章 文件安全与权限 1 1.1 文件 1 1.2 文件类型 2 1.3 权限 2 1.4 改变权限位 4 1.4.1 符号模式 4 1.4.2 chmod命令举例 5 1.4.3 绝对模式 5 1.4.4 chmod命令的其他例子 6 1.4.5 可以选择使用符号模式或绝对模式 7 1.5 目录 7 1.6 suid/guid 7 1.6.1 为什么要使用suid/guid 8 1.6.2 设置suid/guid的例子 8 1.7 chown和chgrp 9 1.7.1 chown举例 9 1.7.2 chgrp举例 9 1.7.3 找出你所属于的用户组 9 1.7.4 找出其他用户所属于的组 10 1.8 umask 10 1.8.1 如何计算umask值 10 1.8.2 常用的umask值 11 1.9 符号链接 12 1.9.1 使用软链接来保存文件的多个映像 12 1.9.2 符号链接举例 12 1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok来执行shell命令 19 2.1.14 find命令的例子 20 2.2 xargs 20 2.3 小结 21 第3章 后台执行命令 22 3.1 cron和crontab 22 3.1.1 crontab的域 22 3.1.2 crontab条目举例 23 3.1.3 crontab命令选项 23 3.1.4 创建一个新的crontab文件 24 3.1.5 列出crontab文件 24 3.1.6 编辑crontab文件 24 3.1.7 删除crontab文件 25 3.1.8 恢复丢失的crontab文件 25 3.2 at命令 25 3.2.1 使用at命令提交命令或脚本 26 3.2.2 列出所提交的作业 27 3.2.3 清除一个作业 27 3.3 &命令 27 3.3.1 向后台提交命令 28 3.3.2 用ps命令查看进程 28 3.3.3 杀死后台进程 28 3.4 nohup命令 29 3.4.1 使用nohup命令提交作业 29 3.4.2 一次提交几个作业 29 3.5 小结 30 第4章 文件名置换 31 4.1 使用* 31 4.2 使用? 32 4.3 使用[...]和[!...] 32 4.4 小结 33 第5章 shell输入与输出 34 5.1 echo 34 5.2 read 35 5.3 cat 37 5.4 管道 38 5.5 tee 39 5.6 标准输入、输出和错误 40 5.6.1 标准输入 40 5.6.2 标准输出 40 5.6.3 标准错误 40 5.7 文件重定向 40 5.7.1 重定向标准输出 41 5.7.2 重定向标准输入 42 5.7.3 重定向标准错误 42 5.8 结合使用标准输出和标准错误 43 5.9 合并标准输出和标准错误 43 5.10 exec 44 5.11 使用文件描述符 44 5.12 小结 45 第6章 命令执行顺序 46 6.1 使用&& 46 6.2 使用|| 46 6.3 用()和{ }将命令结合在一起 47 6.4 小结 48 第二部分 文本过滤 第7章 正则表达式介绍 49 7.1 使用句点匹配单字符 50 7.2 在行首以^匹配字符串或字符序列 50 7.3 在行尾以$匹配字符串或字符 51 7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值