本文使用的工具:CentOS。
1.打开终端:
鼠标单击右键,选择“在终端打开(E)”选项。
2.命令行基础
常用命令:
(1)ls:列出目录内容
列出当前目录或指定目录中的文件和文件夹。
- 基本用法:
ls
- 常用选项:
-l
:详细列表格式,显示权限、所有者、大小、时间等信息。-a
:显示所有文件,包括隐藏文件(以.
开头的文件)。-h
:人类可读格式,文件大小以KB/MB显示。-lh:
详细显示且人类可读的文件大小。
演示:
(2)cd :切换目录
在不同的目录之间切换。
- 基本用法:
cd [目录名]
- 特殊目录:
cd ..
:返回上一级目录。cd ~
:返回主目录(即用户目录)。cd /
:切换到根目录。
演示:
(3)pwd :显示当前工作目录
显示当前所在的目录路径。
演示:
(4)mkdir :创建目录
创建一个或多个新目录。
- 基本用法:
mkdir [目录名]
- 常用选项:
-p
:创建嵌套目录,自动创建父目录。
演示:
(5)rmdir
:删除目录
删除空目录(仅能删除空的目录)。
演示:
扩展:rm -r
删除非空目录
删除包含文件的目录时,需要使用rm -r
。
演示:
(6)cp
:复制文件
复制文件或目录。
- 基本用法:
cp [源文件] [目标文件]
- 常用选项:
-r
:递归复制整个目录及其内容。-i
:在覆盖文件时提示确认。
使用 touch 创建一个空文件,使用 echo 创建三个非空文件。
并用 cat 查看文件里的信息。
演示:
演示1:复制文件
操作说明:
- 将当前目录下的
file1.txt
文件复制到指定的目标路径/parent/child/grand
下。 - 如果目标路径中已经存在同名文件,默认情况下该文件会被覆盖,而不会提示用户。
结果:
- 如果目标路径
/parent/child/grand
中原本没有file1.txt
,则会创建一个新的file1.txt
文件。 - 如果目标路径中已存在
file1.txt
,则该文件会被覆盖,内容将变为复制过来的file1.txt
的内容。
演示2:-r
递归复制目录
操作说明:
- 使用
-r
选项(递归)将dir1
目录及其所有子目录和文件复制到指定的目标路径/path/to/destination/
下。 - 如果目标路径中没有
dir1
,则会创建一个新的目录dir1
,并复制所有内容。
结果:
- 目标路径中会出现一个名为
dir1
的新目录,内部结构与源目录完全相同,包括所有的子目录和文件。 - 如果目标路径中已经存在同名目录
dir1
,该目录的内容将被合并,源目录中的文件将复制到目标目录中。如果有同名文件,默认情况下会被覆盖。
我们执行 cd parent/child/grand 的命令后,可以看到有parent1,说明复制成功。
可以进一步检查:
演示3:-i 复制文件时进行覆盖提示
操作说明:
- 使用
-i
选项(interactive)将file1.txt
复制到指定的目标路径/path/to/destination/
。 - 如果目标路径中已经存在同名文件,系统会提示用户确认是否覆盖。
结果:
-
如果目标路径中没有
file1.txt
,将会直接复制。 -
如果目标路径中已存在
file1.txt
,会出现提示:用户可以输入
y
以确认覆盖,或输入n
以取消操作。
(7)mv :移动或重命名文件
用于移动文件或重命名文件。
- 基本用法:
mv [源文件] [目标文件]
演示:将 file3.txt 移动到 parent1/child1/grand1 目录下
演示:将 file3.txt 重命名为 file33.txt
(8)cat
:查看文件内容
将文件内容输出到终端。
- 基本用法:
cat [文件名]
- 常用选项:
-n
:显示行号。
演示:
(9)man
:查看命令手册
显示指定命令的帮助文档。
man ls # 显示ls命令的手册
man cp # 显示cp命令的手册
演示:输入 man ls
输入完之后按 回车:
按 q 可退出:
3.文件和目录权限
Linux文件权限分为三种类型:读(r
)、写(w
)和执行(x
),分配给文件的所有者、用户组和其他人。
- 权限格式:通过
ls -l
命令查看文件权限,比如:-rwxr-xr-- 1 user group 4096 Oct 22 10:15 example.txt
rwx
:所有者的权限。r-x
:用户组的权限。r--
:其他用户的权限。
(1) chmod
:更改权限
修改文件或目录的权限。
- 基本格式:
chmod [权限] [文件名]
- 权限表示法:
- 八进制表示法:
r=4
,w=2
,x=1
。如chmod 755 file1.txt
,表示权限为rwxr-xr-x
。 - 字母表示法:
u
(用户)、g
(组)、o
(其他)、a
(所有)。例如chmod u+x file1.txt
为用户添加执行权限。
- 八进制表示法:
示例:
chmod 755 file1.txt # 设置权限为rwxr-xr-x
chmod u+x file1.txt # 为所有者添加执行权限
chmod g-w file1.txt # 移除组的写权限
(2) chown
:更改文件所有者
更改文件或目录的所有者。
- 基本格式:
chown [新所有者] [文件名]
- 常用格式:
chown [新所有者]:[新组] [文件名]
示例:
chown user2 file1.txt # 将文件所有者更改为user2 chown user2:group2 file1.txt # 更改文件所有者为user2,组为group2
(3) chgrp
:更改文件的用户组
仅更改文件或目录的用户组。
- 基本格式:
chgrp [新组] [文件名]
示例:
chgrp group2 file1.txt # 将文件的用户组更改为group2
注意 :显示权限不够,
(1)可以尝试切换用户:
演示:
(2)使用 sudo
命令:如果当前用户在 sudoers
文件中有权限,可以使用 sudo
来执行需要权限的命令,而无需完全切换到 root
。例如:
sudo mkdir -p /parent/child/grand
(3)修改目录权限:如果不想使用 root
权限,可以修改上级目录的权限,以允许当前用户进行操作。这可以通过 chmod
或 chown
命令实现,例如:
sudo chmod 755 /parent
或将目录的所有者更改为当前用户:
sudo chown user:user /parent