文件的基本属性
在执行ls -l 之后会显示一下内容:
其中前10位可以看出文件的属性,以及权限信息。
第一位字符
d | 文件目录 |
l | 链接文件 |
- | 文件 |
b | 外部接口 |
c | 例如鼠标键盘等 |
后9个字符每三个为一组,以一组为例
r | 读 |
w | 写 |
x | 执行 |
- | 表示禁止 |
9个字符一共分成三组不同权限,— — —。
第一组属于主权限(即文件所有者,user),第二组属于组权限(即所有者的同组用户,group),第三组属于其他用户对该文件的权限(other)
10位之后的数字是文件数量,再往后第一列表示所有者(user),第二列表示所属组(group),再往后是文件大小和时间
修改文件属性
更改文件所属组
chgrp (更改后的组名) (文件名)
参数:-R 源目录下的所有文件的所属组都会更改
更改文件或目录的所有者
chown 可以更改所有者,也可以更改所属组
chown (所有者) (源文件)
chown (所有者:所属组) (源文件)
更改文件或目录的权限
chmod (更改后的权限) (源文件)
数字写法:(最常用!!!!)
r 对应 4;w 对应 2;x 对应 1(依次减少一半)
例:
对所有者的权限(user): rwx == 4+2+1 == 7
对所属组的权限(group):r-x == 4+0+1 == 5
其他人的权限(other): --- == 0+0+0 ==0
chmod 750 file
777表示对所有人开启所有权限
字母写法:
所有者对应u;所属组对应g;其他人对应o
例子:
对所有者设置可读可写可执行的权限:chmod u+rwx file
对所属组设置可读可写的权限:chmod g+rw file
对其他人关闭可读权限:chmod o-r file
对所属组和其他人开启可读权限:chmod go+r file
对文件进行操作(查看、新建、改写)
查看文件
命令 | 注释 |
---|---|
cat | 从第一行开始,显示文件的全部内容 |
tac | 从最后一行开始,显示全部内容 |
nl | 显示行号 |
head | 只显示头几行 (通过-n 控制查看几行) |
tail | 只显示最末尾的几行 (通过-n 控制查看几行) |
less | 分页显示内容,翻页使用上下键或空格键(q退出) |
more | 分页显示内容,但不能翻页 |
vim | (兼容vi)查看并编辑文件 |
新建文件
使用touch 创建:touch file.txt
创建一个新的空文件
使用重定向符创建:> file.txt
。
通常用于将一个命令的输出重定向进一个新的文件中,如果没有命令就会创建一个新文件
使用echo创建文件:echo '需要输入的内容' > file.txt
可以在创建文件时输入文本,也可以在创建文件之后 使用两个重定向符(>>)向文件里追加内容。
echo '需要追加的内容' >> file.txt
使用cat创建文件:cat > file.txt
命令回车之后不会立即结束,可以输入需要添加的文本然后Ctrl+C/Ctrl+D结束。使用两个重定向符可以向同名文件里追加内容
此命令的方法也适用于head/tail 创建,但是输入内容,并不会写进文件中
使用vi/vim创建文件:vi file.txt
/ vim file.txt
如果文件不存在则新建文件并打开
改写文件
将文件1的内容复制到其他文件中
单个重定向符为新建文件,若文件存在则会覆盖;两个重定向符则向目标文件中追加内容,目标文件不存在则新建
可以使用cat file1.txt >> file2.txt
(向已有文件追加,文件不存在则新建)文件1 的内容将全部复制进文件2中,若想要复制多个文件内容可以使用 cat file1.txt file2.txt >> file3.txt
head追加源文件的前n条,若有多个文件追加会表明数据来源(tail同理,追加原文件的末尾n条)