Linux基础
1、linux常用命令
1、tab 快速补全键(严格区分大小写)
2、cd 进入指定的目录
cd.. 回到上一级目录
3、ls 查看当前目录下的所有目录与文件名
4、touch 文件名 表示创建一个文件
5、mkdir 目录名 表示创建一个目录
6、rm 文件名 表示删除一个文件
rm -rf 目录名 表示删除该目录及其所有的子级目录文件一同删除
rm -rf */ *代表所有,表示删除所有的目录
7、man 帮助命令,查看命令的用法 如:man rm
8、help 帮助命令,查看命令的用法 命令--help
9、ctrl+c: 强制终止,不会终止进程
ctrl+z: 强制终止,终止进程
10、clear 清除命令行终端中的内容
11、ctrl+l: 快捷键,快速清除终端中的内容
2、系统目录
1、cd/: 进入根目录
2、bin: 可执行的二进制文件,通常放的是系统自带的文件
3、dev: Device,设备,通常系统的硬件被抽象成一个文件存放在dev中
4、initrd.img:开机启动时的图片
5、lost+found:异常关机时存放错误信息的文件
6、opt:Options,存放开发者自己开发并安装的软件
7、run:系统运行时需要的文件
8、srv:存放服务启动后需要访问的文件数据
9、**usr:存放与用户直接相关的文件目录
10、boot:启动配置文件,启动时需要的核心文件
11、etc:配置文件(系统中各种所需要的配置文件)
12、lib、lib64:库,系统内置的库文件,自己安装的各种软件的动态或静态的链接,windows中的dll很相似
13、media:媒体,存放是系统外界设备,如U盘,硬盘
14、proc:系统文件
15、sbin:系统管理员特用的二进制文件(root用户)
16、sys:系统文件
17、**var:存放日志信息(启动日志,软件日志)
18、cdrom:挂载入口
19、**home:家,每个用户都会在home目录下有一个自己的文件夹,这个文件夹的名称与用户名一致
20、mnt:挂载点,临时安装的挂载
21、root:超级管理员的目录
22、snap:全新的管理软件包的方式
23、tmp:临时文件
24、vmlinuz:软连接到boot下的一个vmlinuz..文件下
3、获取系统信息
1、lshw:查看硬件信息
2、lscpu:查看cpu信息
3、lsusb:查看usb信息
4、uname:查看当前系统名
uname -a:查看当前系统的所有信息
5、arch:查看系统的架构 x86表示32位 x86_64表示64位
6、df:查看磁盘空间
df -h:可以直观的查看硬盘的空间..
7、date:查看当前的时间
8、cal:查看当月日历
9、hostname:查看主机名
**10、ifconfig:查看ip信息
**11、who:查看当前用户信息
12、free:查看当前内存的使用情况
free -h 可以直观的查看当前的内存使用情况
13、ps:查看当前文件的进程 进程号
14、kill:杀死
kill 进程号 杀死一个进程
kull -9 强制杀死某个进程
15、top:根据消耗的资源,从上至下排序
4、关机或重启命令
1、poweroff:立即关机
2、shutdown -h now:立即关机
3、systemctl poweroff:立即关机
4、shutdown -h +5:5分钟之后自动关机
5、shutdown -c:取消自动关机
6、reboot:重启
7、shutdown -r now:重启
8、systemctl reboot:重启
5、命令前结构
xx@yyy:zzz~[$,#]
1、xx代表当前的用户名
2、yyy代表的是当前的主机名
3、~代表当前用户 相当于 /home/用户名的简写
4、zzz:代表当前的目录路径
5、$:代表当前是普通用户
6、#:代表当前是超级管理员用户
pwd查看当前完整路径
6、用户和组
1、用户
1、增加一个用户
格式:useradd(选项)(参数)
选项:-m 自动建立用户的登入目录
参数:用户名
例:useradd -m aa
注:会自动的在/home目录下创建一个与用户名相同名字的目录名
2、删除一个用户
格式:userdel(选项)(参数)
选项:-f:强制删除用户,即使用户当前已登录
-r:删除用户的同时,删除与用户相关的所有文件
参数:用户名
例:userdel -r aa
3、修改一个用户信息
格式:usermod(选项)(参数)
选项:-l 修改账号的名称
-L 锁定账号
-U 解除锁定
参数:用户名
例:修改用户名 usermod -l 新用户名 老用户名
4、查询一个用户信息
查询已经存在的用户:进入到/home 目录就可以看到
2、组
1、创建一个组
格式:groupadd(选项)(参数)
选项:-g 指定新建工作组的id id默认会自己分配
参数:组名
例:groupadd 组名
2、修改一个组
格式:groupmod(选项)(参数)
选项:-n 修改群组的名字
参数:组名
修改群组名称:例:groupmod -n 新的名字 原名字
3、查询组信息
cd/etc/目录
查看group目录 例:cat group
group文件中存放了该系统所有的组
格式:组名:组的密码:组的id
4、删除某个组
groupdel (参数)
参数:组名
例:groupdel 组名
3、将用户添加到一个组
1、查看用户的组
格式:groups 用户名
结果格式:用户名:主机名 附加组1 附加组2
注:在linux中创建用户的时候,如果没有指定组名,linux会自动的创建一个与用户名相同的组,并自动的将该用户加入到该组
2、创建用户的时候指定组名
格式:useradd(选项)(参数)
选项:-m 自动建立用户的登入目录
-g 指定用户所属的群组(主)
-G -G<群组>:指定用户所属的附加群组
参数: 用户名
例:useradd -g 组名 用户名
在linux中,一个用户只能添加到一个主组中, 但是可以添加到多个附加组中添加到了多个附加组,就可以拥有多个组的权限
3、修改组
格式:usermod(选项)(参数)
选项:-g<群组>:修改用户所属的群组
-G<群组>:修改用户所属的附加群组
参数:用户名
7、文件的权限
1、在linux中通过设置文件的权限来设置各个用户及组的权限
2、查看文件的权限的表现形式:ll 即可看到
drwxr-xr-x 10个字母用来表示一个文件的权限
d rwx r-x r-x
第一个字母:表示的是文件的类型
d 代表当前是目录
l 代表当前是一个链接文件
- 代表当前是文件
第2-4个字母:表示的是当前用户的权限
r 表示可以读该文件
w 表示可以写该文件
x 表示可以执行该文件
- 表示不可以获取对应位置的权限
第5-7个字母:表示当前组的权限
第8-10个字母:表示其他组的权限
3、设置文件权限
格式:chmod[ugoa][+-=][rwx-] 文件名
例1:将自己改成可执行
chmod u=x aa.txt
例2、将所有用户的权限都改成只读
chmod a = r aa.txt
例3、将自己和自己所在的组添加一个可执行权限
chmod ug=w aa.txt
例4、将自己修改为rwx权限
chmod u=rwx aa.txt
ugoa
u user 代表当前用户
g group 代表当前组
o other 代表其他组
a all 代表全部 ugo
+ 添加某个权限
- 去掉某个权限
= 重新设置权限
r 表示可以读该文件
w 表示可以写该文件
x 表示可以执行该文件
4、数值修改法:
将权限用一个值表示:
x 1
w 2
wx 3
r 4
rx 5
rw 6
rwx 7
格式:chmod 值1值2值3 文件名
值1是当前用户
值2是当前组
值3其他
例:将所有用户的权限都改成只可读写执行
chmod 777 aatxt
Linux命令
1、文件/目录的常规操作
1、切换目录的操作
1、cd 目录名 切换到对应的目录下 ---相对路径
2、cd 完整的路径名 ---绝对路径
3、cd ~ ~相当于/home/当前用户
4、cd 表示直接切换到 /home/当前用户
5、cd.. 返回上一级目录
2、linux中 . 的作用
1、..在路径中表示父级目录
2、 . 在路径中表示当前目录下
3、 . 文件名前,表示该文件为隐藏文件
3、查看/查找目录中的文件
1、展示目录下的所有的目录及文件
ls 展示当前目录下的所有目录及文件
ls 目录名 展示指定目录下的所有目录及文件
ls -a 展示目录下的所有的目录及文件
ls -l 以列表的方式展示目录及文件的详细信息 简写ll
2、tree 以树桩结构展示目录中的文件及目录
格式:tree 目录名
第一次使用的时候需要安装:sudo apt install tree
3、获取当前目录的绝对路径
pwd 会展示当前目录的绝对路径
4、find 命令 查找一个文件
格式:find(选项)(参数)
例:find -name 文件名 表示在当前目录下查找指定文件位置
例:find 路径 -name 文件名 表示在指定目录下查找指定文件文职
例:当前目录及子目录下查找所有以.txt和.pdf结尾的文件
find . \(-name "*.txt" -o -name "*.pdf" \)
匹配文件路径或者文件
例:find /usr/ -path "*local*"(中间有空格)
基于正则表达式匹配文件路径
例:find . -regex ".*\(\.txt|\.pdf\)$"
5、whereis 查找系统中的一些程序文件
whereis 命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径
6、查看文件的类型
file 文件名/目录名
4、目录的操作
1、创建一个目录
mkdir 目录名 直接创建一个目录
mkdir -m 700 目录名 创建一个目录,并设置权限
mkdir -p 目录名 如果创建的目录对应的父级目录不存在,连同父级目录一同创建默认情况下,如果父目录不存在,则不能正常创建
2、删除一个目录
rmdir 目录名 删除一个空目录
rm -rf 目录名 删除一个目录及该目录下的所有目录及文件
-r 递归遍历
-f 强制删除
3、修改
修改目录/文件名
mv file1 file2 将目录/文件 file1改名为file2(移动)
mv file1 目录名 将文件移动到某个目录下
2、链接文件
1、文件的存储形式
1、window中文件的存储形式
1、直接存储一个对应的文件数据
2、以快捷方式的形式存储,存储的是文件的路径
2、linux下的存储方式
文件名--->文件节点--->存储文件数据
2、链接
1、硬链接
使用:ln 文件名 硬连接名
特点:1、修改硬链接文件或者源文件,硬链接文件或者源文件都会发生变化
2、删除硬链接文件或者源文件中任意一个,真正的数据不会删除,没有删除的硬链接或者源文件仍然可以访问文件
硬链接是白色的文件名
**2、软连接
软连接是浅蓝色的
使用:ln -s 文件名 软链接名
特点:1、修改硬链接文件或者源文件,硬链接文件或者源文件都会发生变化
2、删除硬链接文件,真正的数据会删除,软链接会变成红色表示该链接有错
3、如果删除软链接文件,源文件不受影响
3、打包/解包 压缩/解压缩
1、打包
tar -cvf 打包后的文件名 目录名
默认将打包后的文件放在当前目录下
-v或--verbose:显示指令执行过程
-f 指定备份文件
-c或--create:建立新的备份文件
例:tar -cvf yy.tar yy
一般打包文件的格式为.tar
打包文件的颜色是红色
2、解包
tar -xvf 已经打包的文件 表示在当前目录下解包
tar -xvf 已经打包的文件 -C 指定目录 表示在指定目录下解包
3、压缩
tar -zcvf 压缩后的文件名 目录名
-z或--gzip或--ungzip:通过gzip指令处理备份文件
例:tar -zcvf yy.tar.gz yy
一般压缩文件的格式为.tar
打包文件的颜色是红色
4、解压缩
tar -zxvf 已经压缩的文件 表示在当前目录下解压
tar -zxvf 已经压缩的文件 -C 指定目录 表示在指定目录下解压
注:文件的扩展名(.xxx)不会影响文件中的原数据,扩展名是方便程序去处理文件,识别文件类型
4、linux中的文本编辑
1、linux默认自带vi,用升级版vim
2、第一次使用需要安装vim
sudo apt install vim
3、vim的三种模式
1、普通模式---当vim打开的时候就直接进入普通模式,在普通模式下可以进入命令,插入模式
2、插入模式---可以通过普通模式进入插入模式,插入模式可以编辑文本
3、命令模式---可以通过普通模式进入命令模式,命令模式可以设置文本的保存退出方式
4、三种模式的切换
1、普通模式--->插入模式 i,a,o
2、普通模式--->命令模式 :
3、插入模式--->普通模式 esc
4、命令模式--->普通模式 删除:
5、使用
1、vim 打开文件
格式:vim 文件名 打开一个可编辑文件
注:如果文件名不存在,会自动创建一个空的文件,并打开
2、普通模式 ——> 插入模式
1、 i 进入插入模式,按下i之后,光标不动,插入文本的时候,在原光标前面插入文本内容
2、 a 进入插入模式,按下a之后,光标向后移动一位,插入文本的时候, 在原光标后面插入文本内容
3、 I 进入插入模式,按下I之后,光标会移动到该行的起始位置,插入文本的时候,在行首位置开始插入内容
4、 A 进入插入模式,按下A之后,光标会移动到该行的末尾位置,插入文本的时候,在行末位置开始插入内容
5、 o 进入插入模式,按下o之后,会先在该行创建一个空的下一行,且光标在下一行的行首,直接会在下一行的行首插入内容
6、 O 进入插入模式,按下O之后,会先在该行创建一个空的上一行,且光标在上一行的行首,直接会再上一行的行首插入内容
3、命令模式命令
1、wq 保存并退出
2、q 退出
3、q! 强制退出
4、查看文件内容 (尽量不要使用vim)
1、cat 文件名 直接查看文件内容
cat -n 文件名 显示文件内容,并显示行号,空白行算
cat -b 文件名 显示文件内容,并显示行号,空白行不算
2、tac 文件名 倒序查看文件内容
3、head 文件名 直接查看文件内容 默认查看文件的最上面的10行
head -n 文件名 显示文件开始的n行内容
4、tail 文件名 倒序查看文件内容 默认查看文件的最后的10行
tail -n 文件名 显示文件末尾的n行内容
5、more 文件名 当文件内容过多的时候,分页显示内容,按空格进行翻页
6、wc 文件名 统计一个文件中各种数据的数据
计算文件的Byte数、字数或是列数