✍个人博客:https://blog.csdn.net/Newin2020?spm=1011.2415.3001.5343
专栏定位:为 0 基础刚入门 Linux 的小伙伴整理的详细笔记,也欢迎大佬们一起交流~
专栏地址:https://blog.csdn.net/newin2020/category_12190079.html
❤️如果有收获的话,欢迎点赞收藏,您的支持就是我创作的最大动力
唠叨唠叨:在这个专栏里我将会整理 PAT 甲级的真题题解,并将他们进行分类,方便大家参考。
(1)绝对路径:从根目录开始描述的路径,也就是路径开始 /
。
(2)相对路径:从当前目录开始描述的路径,也就是路径开头不是 /
。
(3).
代表当前目录,..
代表上级目录。
(4)~/
代表家目录,等价于 /home/acs/
,其中 acs
是用户的文件夹。它并不是根目录,而是根目录下的用户目录里。
Linux 系统目录:
文件 | 作用 |
---|---|
bin | 存放二进制可执行文件 |
boot | 存放开机启动程序 |
dev | 存放设备文件 |
home | 存放用户 |
etc | 用户信息和系统配置文件 |
lib | 库文件 |
root | 管理员宿主目录(家目录) |
usr | 用户资源管理目录 |
类型 | 表示 |
---|---|
普通文件 | - |
目录文件 | d |
字符设备文件 | c |
块设备文件 | b |
软连接 | l |
管道文件 | p |
套接字 | s |
目录项详细信息:
文件权限 | 硬链接计数 | 所有者 | 所属组 | 大小 | 时间 | 文件名/文件夹名 |
---|
权限具体展开(举例):
- | r | w | - | r | - | - | r | - | - |
---|---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |
1
代表文件类型234
代表所有者读写执行权限567
代表同组用户读写执行权限890
代表其他人读写执行权限(1)文字设定法
chmod [who] [+|-|=] [mode] filename
操作对象 who
可以是下述字母中的任一个或者它们的组合:
表示 | 含义 |
---|---|
u | 表示**”用户(user)”**,即文件或目录的所有者 |
g | 表示**”同组(group)用户”**,即与文件所有者有相同组 ID 的所有用户 |
o | 表示**”其他(others)用户”** |
a | 表示**”所有(all)用户”**,它是系统默认值 |
操作符号可以是:
表示 | 含义 |
---|---|
+ | 添加某个权限 |
- | 取消某个权限 |
= | 赋予给定权限并取消其他所有权限(如果有的话) |
下面就是一个给 file
添加权限的例子:
(2)数字设定法
- | r | w | - | r | - | - | r | - | - |
---|---|---|---|---|---|---|---|---|---|
4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
三个组的权限都用二进制编号,比如要设置当前用户对文件的读写和执行权限,则要设置当前用户的操作权限为 4(读)+ 2(写)+ 1(执行) = 7 。
用户组和其他用户的权限设置也是一样的。
对于 file
的权限 -rw-rw-r—
,我们设置如下:
所有者:rwx = 7
所有者所在组:rw = 6
其他用户:r = 4
操作码就是 764
。
创建软连接
ln -s file file.s
软链接就像 windows
下的快捷方式。
注意: 软连接和
windows
下不完全相同,windows
将快捷方式移动到其它地方文件夹里仍然可以打开,但是将上述的软连接文件移到其它目录下就会失效。
所以,创建软链接最好使用绝对路径。
软连接的权限可以读写执行,和原文件不同。
创建硬链接
ln file file.h
硬链接改变文件信息后,原文件信息也会跟着改变。
sudo adduser newusername
chown username filename
su username
sudo addgroup groupname
sudo chgrp groupname filename
sudo chown username:groupname filename
sudo deluser username
sudo delgroup groupname
sudo apt-get install softname
sudo apt-get update
sudo apt-get remove softname
取消命令,并且换行。
清空本行命令。
可以补全命令和文件名,如果补全不了快速按两下 tab
键,可以显示备选选项。
列出当前目录下所有文件,下列的图中蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件。
ls -l: 以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名、文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等
ls -la: 显示所有文件信息,简写是 ll
ls -h: 不管是什么指令,后面加 h
就会人性化输出,显示的内容会更容易看懂
ls -a: 显示开头带 .
的隐藏文件;**ls -A:**显示的隐藏文件中不包括当前目录 .
和上级目录 ..
显示当前路径。
cp XXX YYY
将 XXX
文件复制成 YYY
,XXX
和 YYY
可以是一个路径,比如 ../dir_c/a.txt
,表示上层目录下的 dir_c
文件夹下的文件 a.txt
。
cp XXX YYY/ZZZ
cp XX YY -r
rm XXX
rm XXX -r
删除文件夹以及文件夹中的所有文件。
如果没有权限,则加上
f
即rm XXX -rf
。
rm *.XXX
rm * 或 rm XX/*
rm * -r
mv XXX YYY
将 XXX
文件移动到 YYY
,和 cp
命令一样,XXX
和 YYY
可以是一个路径;重命名也是用这个命令。
可以直接进行重命名,即在当前目录下更改。
touch XXX
创建一个文件 XXX
。
cat XXX
展示文件 XXX
中的内容。
系统 | 命令 |
---|---|
windows/Linux | Ctrl + insert |
Mac | command + c |
按住
shift
滑动鼠标可以选中文本。
系统 | 命令 |
---|---|
windows/Linux | Shift + insert |
Mac | command + v |
显示历史指令。
find XXX
显示 XXX
目录下的所有文件。
会将结果从最后一行往前输出,常用于日志的查询,可以改变按照时间输出的顺序。
重启 linux 系统。
关机。
# 用法:shut -h [时间]
# 立即关机
shutdown -h now