本文主要介绍Linux操作系统的目录结构及其每个文件的用途,Linux操作系统中查询切换操作、文件类操作、用户与权限操作的相关指令。
Linux操作系统目录结构
在Linux操作系统中,所有的文件和目录均被放置在一个以“ / ”作为根节点开始的倒置树状结构中,“ / ”也称为根目录。
上图中各个目录文件用途如下:
-
/bin:
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 -
/boot:
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 -
/dev :
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 -
/etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 -
/home:
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 -
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。 -
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 -
/sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 -
/tmp:
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 -
/usr:
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 -
/var:
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
Linux操作系统基础指令
(1)查询切换类指令
- 路径查询
pwd 查询当前文件路径
- 目录查询
ls 查询当前目录下的全部内容
ls . 查询当前目录下的全部内容
ls .. 查询上级目录下的全部内容
ls ../.. 查询上两级目录下的全部内容
ls / 查询根目录下的全部内容
- 路径切换
cd 切换到home目录
cd ~ 切换到home目录(~为家目录)
cd .. 切换到上级目录
cd ../.. 切换到上两级目录
cd / 切换到根目录
cd - 返回刚才的目录
cd - 目录名 切换到指定目录
- 查找文件路径
find [查找路径] -name [查找文件名称] 查找文件路径
- 文件中查询字符串
grep "字符串" [查找路径] -r 在文件中查找字符串
(2)文件 / 文件夹类指令
- 查询目录下文件属性
ls -l 罗列文件详细信息
ls -a 罗列隐藏文件
ls -al 罗列隐藏文件及其详细信息
ls -lrt 对文件按照时间排序,修改时间最新的在最下面
- 文件属性解读
- 普通文件
d 文件夹
l 软链接文件
. 隐藏文件
- 创建文件与文件夹
touch (1)创建文件(注意:在Linux中并非以文件后缀来区分文件类型)
(2)创建源代码文件(如:1.c 2.cpp)
mkdir 创建单个文件夹
mkdir -p xxx/xxx/xxx 创建嵌套文件夹
- 删除文件与文件夹
rm xxx 删除指定文件
rm xxx1 xxx2 xxx3 删除多个文件
rm -r xxx 直接删除指定文件夹(-r:递归删除)
rm -i xxx 询问删除指定文件夹(-i:每一步都询问)
rm -f xxx 强制删除指定文件夹(-f:强制执行,不需要询问)
rm * 删除当前目录下的所有内容(等同于rm ./*)(不能再根目录下使用)
rm -rf /* 删除根目录下的全部内容(慎用!!!)
- 拷贝文件
cp [源文件] [目标文件] 拷贝文件
cp -r [源文件夹] [目标文件夹] 拷贝文件夹
cp -r [源文件夹] ../[目标文件夹新名字] 拷贝文件夹并命名
- 移动文件
mv [源文件] [目标路径] 将源文件移动到目标路径
- 重命名文件
mv [目标文件] [新名字] 重命名文件
- 查看文件
方法一:
cat [文件名] 查看文件内容
cat -n [文件名] 查看文件内容的同时显示行号
方法二:
head [文件名] 从文件头部开始默认查看10行
head -100 [文件名] 从文件头部开始查看100行
tail [文件名] 从文件尾部开始默认查看10行
tail -100 [文件名] 从文件尾部开始查看100行
tail -f [文件名] 循环读取文件内容,当文件内容发生改变时,就会立即捕捉
方法三:
more [文件名] 查看大文件内容,到文件末尾自动退出
b:向前翻页 f:向后翻页 q:退出
less [文件名] 查看大文件内容,到文件末尾不会自动退出
b:向前翻页 f:向后翻页 q:退出
- 压缩文件
方法一:zip压缩方式(推荐)
zip [压缩产生的压缩文件].zip [待压缩的文件] 压缩文件
zip [压缩产生的压缩文件].zip [待压缩的文件夹] -r 压缩文件夹
unzip [压缩产生的压缩文件].zip 解压到当前路径
unzip [压缩产生的压缩文件].zip -d [目标路径] 解压到指定路径
方法二:gzip压缩方式
tar -zcvf [压缩产生的压缩文件].tar.gz [待压缩的文件或文件夹] 压缩文件或文件夹
z:gzip压缩方式
c:创建压缩文件
V:展示压缩过程
f:紧跟压缩产生的文件
tar -zxvf [压缩产生的压缩文件].tar.gz 解压缩文件
x:解压缩
方法三:bz2压缩方式
tar -jcvf [压缩产生的压缩文件].tar.bz [待压缩的文件或文件夹] 压缩文件或文件夹
j:bz2压缩方式
tar -jxvf [压缩产生的压缩文件].tar.bz 解压缩文件
(3)用户与权限类指令
- 查看当前用户
whoami 查看当前用户
- 创建普通用户(root用户才可创建)
useradd [新用户名] 创建新用户
passwd [用户名称] 修改用户密码
- 切换用户
su - [用户名] 可直接切换到用户的家目录
su [用户名] 不可直接切换到用户的家目录
- 文件权限分类与访问者分类
- 更改文件或文件夹所属用户(默认创建者)
chown [用户] [文件名]
chown -R [用户] [文件夹名]
- 更改文件或文件夹所属用户组(默认创建者)
chgrp [用户] [文件名]
chgrp -R [用户] [文件夹名]
- 权限的表现形式
可读(r) 可写(w) 可执行(x)
二进制与八进制表现形式
二级制表现形式 | 八进制表现形式 | |
r - - | 100 | 4 |
- w - | 101 | 2 |
- - x | 001 | 1 |
rw- | 110 | 6 |
r - x | 101 | 5 |
- wx | 011 | 3 |
rwx | 111 | 7 |
- - - | 000 | 0 |
- 修改文件权限
chomd [u/g/o] [+/-] [r/w/x] [文件名称]
- 不同权限对文件和文件夹的作用
对文件的作用
r:读取文件内容的权限
w:修改文件内容的权限
x:执行文件内容的权限
对文件夹的作用
r:用户查看文件夹内容的权限
w:用户移动/删除文件夹下文件的权限
x:用户进入文件夹的权限
- 临时权限sudo(将用户配置到sudo文件中:/etc/sudoers)
vim /etc/sudoers 赋予用户一个临时权限
source /etc/sudoers 指令生效指令
- 粘滞位
介绍:针对文件使用粘滞位,可以限制文件的可删除用户,避免事故
可删除粘滞位文件的用户有: (1)root用户
(2)该文件所有者
(3)该文件夹所有者
chmod +t [文件名] 对目标文件设置粘滞位
(4)其他类指令
- Linux帮助手册
man xxx 查询xxx命令的相关信息、使用方法、查询手册位置等信息
- 查询字符串
grep "字符串" [查找路径] -r 在文件中查找字符串
- 查询历史指令
history 查看历史执行过的命令
![历史命令序号] 重复执行历史命令
- 重定向
echo “xxxx” > [目标文件] 将这段字符重定向到文件中
制作不易求点赞,欢迎大家交流讨论!!!