一. 切换、创建、删除目录
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个字符
[]模式用法,匹配[]中字符列表中的任意一个字符,加上“!”表示取反
{}模式用法, {}表示匹配大括号里面的所有模式,模式之间用逗号分隔