Linux学习日记 6.25 (文件操作)

mooc链接

一. 切换、创建、删除目录

Linux采用树形目录,所有目录都位于根目录下,至少包括以下12个目录。
在这里插入图片描述
各目录应存放的文件
在这里插入图片描述

命令 功能
pwd 显示当前所处的工作目录
cd 切换到目标目录
. (单点号) 表示当前目录
… (双点号) 表示工作目录的上层目录
- 表示前一个目录
~ 表示用户的家目录
mkdir 创建目录(-p可创建嵌套目录)
rmdir 删除目录(只能删除空目录)

绝对路径和相对路径

在这里插入图片描述

在这里插入图片描述

二. 列出文件和文件属性

ls [文件名|目录名|NONE] :列出文件
输入文件名,则列出文件。
输出目录名,则列出目录下文件。
不输出,则列出当前工作目录下的文件。

选项
-a:列出所有文件(包括隐藏文件)
-l:以长格式列出文件(除文件名外,还有文件的详细属性信息)
-al:-a和-l连用

一条完整的信息由7部分组成
在这里插入图片描述
第一部分:类型和权限
第二部分:硬链接数目
第三部分:文件拥有者
第四部分:文件从属的用户组
第五部分:文件大小(单位字节Byte)
第六部分:文件时间戳
第七部分:文件名
其中,一三四部分决定了文件访问权限。

第一部分详解
在这里插入图片描述

符号 权限类型
r 可读
w 可写
x 可执行
- 无相应权限

除第一个字符文件类型外,还有九个字符,每三个字符为一组。
第一组表示文件拥有者(第三部分)的权限。
第二组表示用户组(第四部分)的权限。
第三组表示其他用户的权限。

符号 文件类型
- 常规文件
d 目录文件
l 符号链接文件
c 字符特殊设备文件
b 模块特殊设备文件
p FIFO管道文件
s 套接字文件

修改文件属性

命令 功能
chmod 修改文件的访问属性
chown 修改文件的拥有者和从属用户组的属性

举例

chmod 700 hello.sh     			//将hello.sh属性改为rwx------

chown nbcc:stu hello.sh			//将拥有者和用户组分别改为nbcc和stu
//若单修改拥有者,省略冒号及以后部分
//若单修改用户组,省略冒号前面的部分

三. 拷贝、剪切、删除、创建文件

1.拷贝文件 cp

cp [要拷贝的文件|文件列表] [目的文件名|目的目录]

选项
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。

cp注意事项

1.拷贝文件时,若目标文件中已有同名文件存在,默认先询问用户是否覆盖。若有批量同名文件存在,建议cp命令后跟-f选项,并在cp命令前键入反斜杠""。\cp -f /tmp/file01 /tmp/file02 ~就会强制覆盖所有同名文件。
2.拷贝文件时,文件属性,拥有者,用户组,访问权限位都有可能发生改变。若要将文件原原本本的拷贝,建议跟-p选项cp -p /tmp/sample.sh ~nbcc

2.移动文件 mv

mv [要移动的文件|文件列表|目录] [目的文件名|目的目录]

mv注意事项
1.与cp注意事项1类似,批量移动文件可用选项-p
2.Linux中没有专门重命名文件名的命令,可用mv实现。例如mv ./file01 ./file02,将file01重命名为file02.

3.删除文件 rm

rm [要删除的文件|文件列表|目录]

rm可删除单个、多个文件,也可删除整个目录。

选项
-R:递归删除目录及其内容

4.创建文件 touch

touch [要创建的文件]

touch注意事项
若touch创建的文件已存在,将会改变原文件的时间戳属性,即文件的最后修改时间。

四. 文件通配符

在这里插入图片描述

“?”字符用法,匹配任意单个字符
在这里插入图片描述

“*”字符用法,匹配任意数量字符,包括0个字符
在这里插入图片描述

[]模式用法,匹配[]中字符列表中的任意一个字符,加上“!”表示取反
在这里插入图片描述
{}模式用法, {}表示匹配大括号里面的所有模式,模式之间用逗号分隔
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Dax1_/article/details/106959636