文件类型

在 Linux 下一切皆文件,这些文件被分为七种类型

  • - :普通文件
  • d :目录文件
  • b : 块设备
  • c 字符设备
  • l : 符号链接文件
  • p :管道文件 pipe
  • s : 套接字文件 sock

文件管理

1、cd 命令

命令作用
cd ..返回上一级目录
cd ~进入当前用户的家目录
cd -返回上次所在的目录(返回进入当前目录之前,所在的目录)
cd /进入系统根目录

温故而知新:关于 Linux 文件系统的知识

2、pwd 命令

pwd 显示当前所在的路径

3、ls 命令

ls 命令用于显示指定工作目录下的内容

linux 中默认不会输出.开头的文件

命令作用
ls列出当前目录下的文件(只显示文件名)
ls [文件名]列出指定文件目录下的文件
ls -l列出文件和目录的详细资料(包括权限,大小,创建时间等)
ls -a列出全部文件,包括...(只显示文件名)
ls -A列出所有的文件,不包括...
ls -R连同子目录的内容一起列出(输出整个目录结构)
ls -t根据最后的修改时间排序

4、cp 命令

cp 命令主要用于复制文件或目录

语法格式

cp [参数] 源文件 目标文件

cp [参数] 源文件 1 源文件 2 … 目标目录

参数作用
-f若目标文件已存在,则会直接覆盖原文件(相当于重命名)
-i若目标文件已存在,则会询问是否覆盖
-r递归复制文件和目录

5、mv 命令

mv 命令用来为文件或目录改名、或将文件或目录移入其它位置

语法格式

mv [参数] 源文件 目标

mv [参数] 源文件 1 源文件 2 … 目标

参数作用
-fforce 强制的意思,覆盖已有文件时,不进行任何提示
-i若存在同名文件,会询问是否覆盖
-u当源文件比目标文件新,或者目标文件不存在时,才执行移动此操作
-b当文件存在时,覆盖前为其创建一个备份

也可以直接用作重命名

注意:将目录 old 移动目录 new 中,前提是目录 new 已存在,若不存在则进行改名

6、rm 命令

rm 命令用于删除文件或目录

语法格式

rm [参数] [文件]

命令作用
-f就是 force 的意思,忽略不存在的文件,不会出现警告消息
-i互动模式,在删除前会询问用户是否操作
-r/R递归删除,常用于目录删除

文件内容

1、cat 命令

在终端设备上显示文件内容

命令作用
cat -n file显示内容并显示行数(空行也编号)
head -n 3 file查看一个文件内容的前三行
tail -n 3 file查看一个文件内容的最后三行

文件权限

了解文件权限

第一个字母文章开头已经提到了,代表文件类型

后面的 9 个字符表示 3 组权限,分别为

  • ⽂件所属⽤户 user 的权限
  • ⽂件所属⽤户组 group 的权限
  • 其他⼈ others 的权限

其中 r 表示读权限, w 表示写权限,x 表示执⾏权限

还可以使用还可以⽤ 8 进制表示法:

字符对应的 8 进制
r4
w2
x1
-0

案例如下:

案例8 进制表示用户权限 owner用户所在组权限 group其他人权限 other文件类型
-rwxrwxrwx777读、写、执行读、写、执行读、写、执行普通文件
drwxr-xr-x755读、写、执行读、执行读、执行目录文件
-rw-r–r–644读、写普通文件

设置文件权限

可以使用 “+” 来设置权限,使用 “-“ 来取消权限,也可以直接 “=” 设置权限

1、chmod 命令

chmod 命令(change mode)用来修改某个目录或文件的访问权限

  • chmod 777 file :设置⽂件所属⽤户(u)、⽂件所属⽤户组(g)以及其他人(o),的权限为:读、写、执行的权限(777)
  • chmod ug=rw,o=x file :设置⽂件所属⽤户、⽂件所属⽤户组的权限为读、写;其他人权限是执行
  • chmod g-w,o+r file :取消⽂件所属⽤户组的写权限,为其他人增加读权限

2、chown 命令

chown 命令(change owner)用来将文件的拥有者改为指定的用户或组(改变文件的所有者)

  • chown user file :改变一个文件的所属⽤户
  • chown -R user directory :改变一个目录的所属⽤户并同时改变改目录下所有文件的所属⽤户
  • chown user:group file :改变一个文件的所属⽤户和所属⽤户组

3、chgrp 命令

chgrp 允许普通用户改变文件所属的组,只要该用户是该组的一员

  • chgrp group file :改变文件的群组