一、文件操作
- cd dirName 进入某个目录
- cd / 进入到根目录
- cd … 回退到上一级目录(注意是两个点,不知为什么我输入两个点,显示了3个)
- ls 可以查看当前文件夹下面的所有文件
- ls -a 列出目录中的所有文件,包含以.开始的隐藏文件
- ls -l 除了文件名之外,还将文件的权限、所有者、所属组、文件大小等信息详细列出来
eg: 执行ls -l结果如下:
以红色圈出来的文件信息为例:
第一列:第一个字母代表了文件的类型,有如下文件类型:
文件类型 | |
---|---|
- | 普通文件,包括纯文本文件、二进制文件、各种压缩文件等 |
d | 目录 |
b | 块设备文件,就是保存大块数据的设备,比如最常见的硬盘 |
c | 字符设备文件,例如键盘、鼠标等 |
s | 套接字文件 |
p | 管道文件 |
l | 链接文件,类似 Windows 中的快捷方式。 |
第一列接下来9位数,每3位为一组,从左到右分别代表了:文件所有者权限、所属组权限、其他人权限,其中:r 表示对文件的读权限、w表示对文件的写权限、x 表示对可执行文件或目录的执行权限
比如:rwxr-xr-x,表示所有者对文件有读写、执行的权限;所属组中的用户对文件有读、执行的权限,但没有写的权限;其他人对文件对文件有读、执行的权限,但没有写的权限。
第三列:文件所有者,也就是这个文件属于哪个用户。默认所有者是创建文件的用户。
第四列:文件所属组,一般情况下就是创建文件的用户所在组。
第五列:文件大小,默认单位是字节。
第六列:文件修改时间。
第七列:文件名或目录名。
- pwd 查看当前工作目录的绝对路径。
- mkdir 目录 创建空目录
- touch 文件 创建文件(当文件不存在时)
- rmdir 目录 用于删除空目录
- rm [选项] 文件或目录 永久性地删除文件系统中指定的文件或目录,它有如下选项:
选项 | 说明 |
---|---|
-f | 强制删除,系统将不会询问,而是直接删除目标文件 |
-i | 在删除文件或目录之前,系统会给出提示 |
-r | 递归删除,主要用于删除目录,可删除指定目录及包含的所有子目录和文件。 |
使用rm -r 目录删除目录的是,每个文件都会询问是否确定删除。如果想直接删除,不询问,可使用 rm -rf 目录名。
注意:rm 命令会永久性地删除文件或目录,不能恢复,因此在删除前要慎重。
- cp [选项] 源文件 目标文件 将源文件内容复制到目标文件,常用选项说明:
选项 | 说明 |
---|---|
-r | 递归复制,用于复制目录 |
-i | 如果目标文件已经存在,则会询问是否覆盖;cp命令不加选项默认就是-i |
-l | 把目标文件建立为源文件的硬链接文件,而不是复制源文件 |
-s | 把目标文件建立为源文件的软链接文件,而不是复制源文件 |
- cat 文件名 查看文件内容
- tac 文件名 倒着查看文件内容
- more 文件名 分页显示文本文件的内容,回车查看下一页
- head -n num 文件名 显示指定文件前若干行的文件内容,n可以省略:eg:head -2 文件名,显示文件前两行内容
- tail -n num 文件名 tail 命令和 head 命令正好相反,它用来查看文件末尾若干行数据,同样n可以省略
二、用户与用户组
- sudo adduser 用户名 : 创建一个用户
- userdel -r 用户名 : 删除用户的同时删除用户的家目录。如果不加-r选项,在删除用户的时候就不会删除用户的家目录,那么家目录就是会变成垃圾文件。
- passwd 用户名 为用户配置密码
- groupadd 组名 创建一个用户组
- groupmod [选现] 组名 修改用户组的信息
选项 | 说明 |
---|---|
-g gid | 修改组 ID |
-n 新组名 | 修改组名 |
eg: groupmod -n newgroup1 group1;修改将group1组名称修改为newgroup1
- groupdel 组名 删除用户组
- gpasswd 选项 组名 将用户添加进组或从组里删除
选项 | 说明 |
---|---|
-M user1,user2… | 将 user1,user2… 加入到此群组中,仅 root 用户可用 |
-A user1,user2… | 将组的控制权交给 user1,user2… 等用户管理,仅 root 用户可用 |
选项为空时,表示给组设置密码,仅 root 用户可用。 | |
-r | 删除组的密码,仅 root 用户可用。 |
-R | 让组的密码失效,仅 root 用户可用。 |
-a user | 将 user 用户加入到组中。 eg: gpasswd -a mao2 g1 |
-d user | 将 user 用户从组中移除。eg: gpasswd -d mao2 g1 |
- whoami 打印当前执行操作的用户名
- who am i 打印登陆当前 Linux 系统的用户名
三、文件权限管理
权限 | 对文件的作用 |
---|---|
r | 读权限,eg: cat、more、head、tail 等文件查看命令 |
w | 写权限,可以对文件内容进行写操作;eg: vim、echo 等修改文件的命令 |
x | 执行权限 |
权限 | 对目录的作用 |
---|---|
r | 读权限,可以查看目录中有哪些文件和子目录;eg: 使用ls命令,查看目录内容 |
w | 写权限,在目录中新建、删除、移动、重命名文件或目录的权限 |
x | 目录不能直接运行,对目录赋予 x 权限,代表用户可以进入目录,eg:cd 命令 |
- 使用数字修改文件权限:chmod [-R] 权限值 文件名 : r+w+x === 4+2+1
-R(可选)选项表示连同子目录中的所有文件,也都修改为设定的权限。
eg:
-rw-r--r-- 1 root root 0 Dec 9 20:43 txt
对txt文件执行chmod 774 txt后。修改txt文件权限为所有者、所属组其他用户可读可写可执行;其他人只能读,不能写和执行。
-rwxrwxr-- 1 root root 0 Dec 9 20:43 txt
- chgrp [-R] 所属组 文件或目录 修改文件(或目录)的所属组
-R(可选)选项表示更改连同子目录中所有文件的所属组信息。 - chown [-R] 所有者 文件或目录 修改文件(或目录)的所有者
-R(可选)选项表示连同子目录中的所有文件,都更改所有者。 - chown [-R] 所有者:所属组 文件或目录 同时修改所有者和所属组
四、打包、解打包、压缩、解压缩操作
首先要明白打包和压缩不是一个概念,打包是将多个文件或目录归纳到一个文件里,打包后的文件是没有被压缩的,文件总大小不变。而压缩是经过压缩算法,将文件的总体积变小以便于保存和传输。
1、使用tar命令打包文件(备份)
tar [选项] 源文件或目录
选项(部分) | 说明 |
---|---|
-c或–create | 打包 |
-f 包名 | 指定打包后的文件名称 |
-v | 显示打包过程 |
eg:打包前有如下文件
执行打包命令:将add.sh、err.txt打包到text1.tar里
打包的时候除了指定打包后的文件名,还可以指定打包到哪个目录下
2、使用tar命令解打包
tar [选项] 包名
选项(部分) | 说明 |
---|---|
-x | 解打包(还原) |
-f 包名 | 指定需要解打包的文件 |
-v | 显示解打包过程 |
-t | 列出tar包的内容,但不对 tar 包做解打包操作。 |
-C 目录 | 指定解打包后文件的位置 |
eg:
使用 tar -tvf tar包命令查看该tar包的内容,但不进行解打包。
为了更好的理解先删除原来的add.sh、err.txt,然后从text1.tar中解打包,还原这两个文件。
将tar包中的文件解打包到指定的目录中,前提是这个目录已经存在
3、tar命令做打包压缩、解压缩解打包操作
打包和压缩是两个不同的操作,需要先打包,然后再进行再对.tar包进行压缩,当然了tar命令同样支持打包并压缩。
tar [选项] 压缩包 文件或目录
选项和上面的选项一样,不同的是增加了两个选项用来指定压缩、解压缩格式。
选项 | 说明 |
---|---|
-z | 压缩、解压缩 “.tar.gz” 格式 |
-j | 压缩、解压缩 ".tar.bz2"格式 |
eg:先将add.sh、err.txt打包并压缩到text1.tar里
使用-t选项查看压缩包的内容:
为了更好的理解先删除原来的add.sh、err.txt,然后从text.tar.gz中解压缩解打包,还原这两个文件。
对于 -j 选项压缩成.tar.bz2格式,以及解压缩的过程完全一样,就不再叙述。
4、zip命令压缩文件或目录
zip [选项] 压缩包名 源文件或源目录
选项(部分) | 说明 |
---|---|
-r | 递归压缩;该选项用于压缩目录 |
-m | 将文件压缩后,删除原文件 |
- 压缩效率 | 压缩效率取值1~9 ,值越大,压缩效果越好,但是会越慢 |
- u | 往压缩文件中添加新文件 |
eg:将 add.sh、err.txt 这两个文件压缩到testZip.zip中,但不删除原文件
将 add.sh、err.txt 这两个文件压缩到testZip.zip中,并删除原文件
查看zip/压缩包中有哪些文件,使用uzip,但不解压压缩包-v
往压缩文件中添加新文件 fun.sh
如果想往压缩文件中添加新文件后删除源原件,加上-m选项即可:zip -um testZip.zip fun.sh
5、使用unzip命令解压zip压缩文件
unzip [选项] 压缩包名
选项(部分) | 说明 |
---|---|
-v | 只查看压缩包的信息 ,不做解压操作 |
-d 目录 | 解压到指定目录下 |
-n | 解压时不覆盖已经存在的文件 |
-o | 解压时覆盖已经存在的文件,并且不需要用户确认 |
eg:将压缩文件解压到指定目录下
不加任何选项,默认压缩到当前文件下
未完待续~