Linux文件系统
FHS3.0(File system Hierarchy Standard)
- /
- etc 配置文件
- bin 必要命令
- usr 二级目录
- home 家目录
- var 动态数据
VFS虚拟文件系统
- 内核层抽象出通用的文件系统接口
- 支持文件、网络、特殊文件系统
抽象对象:
- 超级快:文件系统
- 目录项:文件路径
- 索引节点:具体文件
- 文件:进程打开的文件
属性分层结构
一切皆文件
数据盘挂载
inode :存储数据的元数据
fdisk -l
Linux没有盘符的概念,只有一个根目录/,所有文件都在其下
/
- 根目录
- 层级关系
命令
通用格式:
command [-options] [parameter]
- command :命令本身
- -options: [可选,非必填] 命令的一些选项,可以通过选项控制命令的行为细节
- parameter: [可选,非必填]命令的参数,多数用于命令的指向目标等
语法中[]表示可选
ls
ls [-a -l -h] [Linux路径]
- -a all
- 前面带.的文件使隐藏文件/文件夹,只有通过-a选项才能看到
- -l 以列表(竖向排列)
- -h 表示以易于阅读的形式,列出文件大小,如K,M,G
/home/用户名
组合使用
cd
change directory
cd [Linux路径]
不写参数回到用户的HOME目录下
- 绝对路径
- 相对路径
. 表示当前目录
.. 表示上一级目录
~ 表示HOME目录
mkdir
创建目录
mkdir [-p] 路径
-p可选,创建多级不存在的目录时使用
touch
创建文件
touch 路径
cat
查看内容
cat 路径
more
查看内容,支持翻页,空格翻页,q退出
more 路径
cp
可以用于复制文件\文件夹
cp [-r] 参数1 参数2
- -r选项,可选,用于复制文件夹使用,表示递归
- 参数1,Linux路径,表示被复制的文件或文件夹
- 参数2,Linux路径,表示要复制去的地方
mv
mv 参数1 参数2
可以用于改名
rm
删除文件,文件夹
rm [-r -f] 参数1 参数2 参数n
- -r, 删除文件夹
- -f,force,强制删除(不会弹出提示信息)
- 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
- 所以一般普通用户用不到-f
- 参数1,参数2, ...,参数n 表示要删除的文件或文件夹路径,按照空格隔开。
支持用通配符来模糊匹配
pwd
Print Work Directory
tree
树状目录
which
Linux命令本体就是一个个的二进制可执行文件
which 命令
find
find 起始路径 -name "被查找文件名"
find 起始路径 -size + | -n[kMG]
- +, - 表示大于和小于
- n表示大小数字
- kMG表示大小单位,k表示kb,M表示MB,G表示GB
grep
通过grep命令,从文件中通过关键字过滤文件行
grep [-n] 关键字 文件路径
- 选项 -n 可选,表示在结果中显示匹配的行的行号
- 参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用“ ”将关键字包围起来
- 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口
wc
wc [-c -m -l -w] 文件路径
- 选项, -c, 统计bytes数量
- 选项,-m,统计字符数量
- 选项,-l,统计行数
- 选项,-w,统计单词数量
- 参数,文件路径, 被统计的文件,可作为内容输入端口
管道符
左 | 右。 将左边的结果作为右边的输入
echo
命令行内输出指定内容
反引号`
在echo中,用``括起来表示命令信息
echo `pwd`
重定向符号
> 将左侧命令的结果,覆盖写入到符号右侧指定的文件中
>> 将左侧命令的结果,追加写入到符号右侧指定的文件中
tail
tail [-f -num] 参数
- 参数,linux命令,表示被跟踪的文件路径
- 选项,-f,表示持续跟踪
- 选项,-num,表示尾部多少行,不填默认10行
Vim
命令模式
i : 在当前光标位置进入输入模式
a : 在当前光标位置 之后 进入输入模式
I : 在当前行的开头,进入输入模式
A : 在当前行的结尾,进入输入模式
o : 在当前行的下一行进入输入模式
O : 在当前行的上一行进入输入模式
0 : 移动光标至开头
$ : 移动给光标至行结尾
pageup : 向上翻页
pagedown : 向下翻页
/ : 进入搜索模式
n : 向下继续搜索
N : 向上继续搜索
dd : 删除光标所在的行
ndd : n是数字,表示删除当前光标向下n行
yy : 复制当前行
nyy : 复制当前行和下面的n行
u : 撤销修改
p : 粘贴复制的内容
ctrl + r : 反向撤销修改
gg : 跳到首行
G : 跳到尾行
dG : 从当前行开始,向下全部删除
dgg : 从当前行开始,向上全部删除
dS : 从当前光标开始,删除到本行的结尾
d0 : 从当前光标开始,删除到本行的开头
底线命令模式
: wq 保存并退出
: q 仅退出
: q! 强制退出
:w 仅保存
:set nu 显示行号
:set paste 设置粘贴模式
Linux权限和用户
su
su [-] [用户名]
sudo
普通用户使用sudo使用root权限
用户与用户组
用户和用户组
groupadd 创建用户组
groupdel 用户组名
useradd [-g -d] 用户名
- 选项: -g指定用户的组,不指定-g,会创建同名组加入,指定-g需要组已经存在,如已存在同名组,必须使用-g。
- 选项: -d指定用户HOME路径,不指定,HOME目录默认在: /home/用户名
userdel [-r] 用户名
- 选项:-r,删除用户的HOME目录,不使用-r,删除目录时,HOME目录保留
id [用户名]
- 参数:用户名,被查看的用户,如果不提供则查看自身。
usermod -aG 用户组 用户名
将指定用户加入指定用户组
getent passwd
getent group
使用getent命令,可以查看当前系统内有那些命令
七份信息:
用户名 : 密码(X) : 用户ID : 组ID : 描述信息(无用) : HOME目录 : 执行终端(默认bash)
查看权限管控信息
- 文件或文件夹的控制信息
- 文件或文件夹所属用户
- 文件或文件夹所属用户组
- 第一个d表示文件夹
- 所属用户
- 所有用户组
- 所属其他用户
- r代表读
- 文件夹表示可以查看文件夹内容
- w代表写
- 文件夹表示可以在文件夹内:创建,删除,改名等操作
- x代表可执行权限,针对文件表示可以将文件作为程序执行
- 针对文件夹,表示可以更改工作目录到此文件夹,即cd进入
chmod
修改文件或目录的权限。
chmod u = rwx, g = rx, o = x hello.txt
-R选项可以将文件夹以及文件夹内全部内容权限设置为:rwxrwxrwx
chmod -R u=rwx, g=rwx, o=rwx hello.tx
使用数字序号
chmod 751 hello.txt
chown
更改文件或目录的所有者为指定的用户或用户组。
chown [-R] [用户] [:] [用户组] 文件或文件夹
- 选项,-R,同chmod,对文件夹内全部内容应用相同规则
- 选项,用户,修改所属用户
- 选项,用户组,修改所属用户组
- : 用于分隔用户和用户组
普通用户无法使用,只能用root用户
标签:总结,文件,路径,用户组,选项,命令,文件夹,参数,Linux From: https://blog.51cto.com/u_16189732/7380478