一、文件查看指令
注意: 只能查看纯文本文件
cat指令:
用于查看linux中的小型文本文件
他会一次性将所有的文件内容加载到终端中,终端的数据展示数量有限,大文件显示不全,且过于消耗内存
cat 文件名称
more指令:
用于查看linux中的中型文本文件
使用more进行文件的查看可以按页显示,手动翻页或回滚,更加灵活,但同样消耗内存
more 文件名称
- enter 向下一行
- space 向下一页
- b 向上一页
- q 退出查看
二、系统信息查看指令
什么是进程呢?
我们可以简单的理解为就是正在运行的软件, 一般一个软件最少有一个进程,但是可以有多个.
例如我们再windows如果软件异常,无响应,无法退出无法操作,我们可以直接打开任务管理器结束进程
ps命令:
查看linux系统中的进程信息
ps 查看当前活跃进程
ps -ef 查看当前所有进程
在查看进程时,pid这一列中存储的是进程编号,也就是这个进程的唯一标识.
kill命令:
如果我们想结束linux中的软件或服务也可以通过操作进程来解决
kill -9 进程编号
注意:kill -9 可以快速杀死进程,但是不安全,因为我们的服务再运行过程中,可能会需要保存或者将某些任务执行完再关闭,所以轻易不用,一般都是用于杀死闲置进程,或者不响应的进程.
ifconfig命令:
ifconfig主要用于查看服务器的网络信息, 当前阶段最重要的信息就是ip地址
扩展:在windows中如果需要查看网卡信息,需要使用ipconfig
进行查看
ping命令:
1.ping ip地址, 检测我们是否可以与某一个ip的设备建立网络连接 ping 192.168.88.161
2.ping 127.0.0.1 检测我们的网卡是否正常启动
3.ping www.baidu.com 检测我们的主机是否可以连接互联网
注意: 使用ctrl + c可以退出ping
free命令:
可以使用free查看内存使用情况
df命令:
可以使用df命令查看磁盘的使用情况
clear命令:
clear命令,可以清除终端窗口的信息,让光标移动到终端的最上方
快速清屏也可以使用快捷键 ctrl + L
三、开关机指令
reboot命令:
重启计算机, reboot属于安全重启,不属于强制重启,可以放心用
但是不会像windows一样提示我们有未关闭 未保存信息等.
shutdown命令:
shutdown命令主要用于关机操作, 关机过程中,可以指定关机时间
shutdown -h now 立即关机
shutdown -h 10 十分钟后关机
注意: 如果shutdwom后不加任何参数, 将会在一分钟之后关闭, 中间可以使用 -c 进行取消
注: 还可以使用以下命令进行关机或重启,和上述命令作用相
init 0 关机
init 6 重启
四、管道与全文检索
grep命令:
grep就是根据一定的规则做全文检索, 在文件中查询到满足规则的文本内容
记住grep 是在文件中查询文本.
在指定的文件中查询特定的字符组合
# 使用grep检索1.txt文件中含有字符aaa的列有哪些
grep aaa 1.txt
| 管道命令:
管道指令,就是连接两个命令的指令, 前一个命令的输出,就是下一个命令的输入
# 查询所有文件中7月份创建的文件有哪些
ll | grep 7月
# 查询所有文件中7月份创建的文件,并且名字是Music
ll | grep 7月 | grep Music
查询指令which:
查询脚本或者终端命令文件所在的位置
一般情况下我们可以通过which找到终端指令的安装目录,进行配置或者删除等
查询指令hostname:
用于查询主机名称
在大数据开发中极有可能会同时操作多台服务器,此时我们正在操作哪一台服务器我们需要通过主机名称辨认
五、压缩与解压指令
tar命令:
tar命令是进行打包,解包, 压缩和解压的命令
打包(cvf): 将多个文件归档为一个文件,文件大小不会减小.
解包(拆包xvf):将一个包文件拆分为多个实体文件.
压缩:将文件按照一定的算法减小体积,但是文件的内容和信息不发生改变
解压:将一个压缩文件还原到正常状态.
选项:
-
c : 打包选项
-
x : 解包选项
-
z : 压缩或者解压选项
-
v : 展示过程信息
-
f : 指定文件名称
注意: c 和x 参数不能同时出现在终端命令中
打包:
# tar -cvf 包的名称 要打包的文件列表
tar -cvf 1_3.tar 1.txt 2.txt 3.txt
# 将1.txt 2.txt 3.txt 打包到 aaa目录下
tar -cvf aaa/1_3.tar 1.txt 2.txt 3.txt
解包:
# 将原有的.txt文件全部删除
rm -f *.txt
# 将1_3.tar 解压到当前压缩包所在位置
tar -xvf 1_3.tar
# 将个文件解压bbb目录下
# 此时需要使用选项C(大写)指定解包路径
tar -xvf 1_3.tar -C bbb
压缩:
tar -zcvf 1_3.tar.gz 1.txt 2.txt 3.txt
解压:
tar -zxvf 1_3.tar.gz -C bbb
注意:
1.压缩时,如果源文件太小,可能体积会增大 例如 被压缩文件只有20B 可能压缩完成后大小是50B
2.压缩和解压时一般使用.tar.gz结尾,方便程序员交流
3.使用上述指令压缩后,文件为gzip压缩格式.
六、用户管理指令
useradd 用户的添加:
useradd 可以添加一个linux用户 同时会在/home目录下创建一个该用户的家目录
创建完该用户后,无法使用,需要设置密码后方可登录
useradd python
# 查看用户是否添加成功
cat /etc/passwd
passwd 用户密码的设置
注意: 有用户 无密码 无法进行远程连接
passwd 用户名 可以给指定的用户设置密码
注意: 在使用远程连接时,终端会出现一个前缀,前缀的格式是:用户名@主机名称 工作目录名称
root 用户和普通用户相比,家目录位置不一样, root用户的家目录在/root 普通用户家目录在/home/用户名
root用户在命令输入前是一个# 普通用户是一个$
userdel 删除用户:
# 删除用户需要同时删除用户家目录
userdel -r python
# 如果不需要删除家目录直接去掉-r即可
七、文件权限管理指令
什么是文件权限???
这个文件可以给谁用,怎么用
思考: 文件都有哪些权限呢?
一个文件的权限应该有 可读 可写 可执行
思考: 文件权限的划分应该从哪些维度?
以爱奇艺会员为例:
一个用户是否拥有这个电影的观看权限
是哪一个等级的会员 群组权限
是否个人购买了观看权限 个人权限
总结: 文件权限可以划分为 组群权限 和 个人权限
linux中的文件权限
linux 文件权限分为三种
读: r -- read
写: w -- write
执行 : x -- excute
无权限 : -
linux 文件归属
属主 : 文件拥有者,一般是创建者 u --- user
属组 : 文件拥有者所在的用户组 g --- group
其他用户 : 除了 属主 和属组的其他用户 o ----- other
查看文件的相关权限
使用ls -l 就可以查看文件详细信息,内部包含文件权限内容
权限分析
文件类型中
d
代表目录
-
代表普通文件
chmod命令:
chmod主要是进行文件权限管理的,可以给文件增加修改删除权限,分为两种管理类型
数值型权限管理
一共三种权限
r
: 4
w
: 2
x
: 1
-
:0
给每个权限一个数值
那么该文件具有可读可写权限时, 权限值总和是多少? 6
如果该权限值总和是6 则该文件拥有的权限有哪些? 可读可写
思考: 如果我们有四种权限, 我们的第四种权限值应该是多少??? 8
这种赋值形式叫做位移枚举, 每一个新增数字都是上一个数字的倍数,此时多个数字相加,都有一个唯一结果反之可以推算出是由那几个数字相加的.
# 用户拥有读写执行权限(rwx 7), 用户组拥有读写权限(rw 6), 其他用户拥有读的权限(r 4)
chmod 764 1.txt
# 如果需要所有用户具有可读可写可执行权限
chmod 777 1.txt
# 使用chmod也可以修改目录的权限
chmod 711 abc
# 但是如果按照上述方式使用,只能修改目录权限,对于其子文件或子目录的权限无法同时修改, 如需同时修改,则需要使用-R
chmod -R 711 abc
# 注意: 在开发中尽量不要出现777的权限会让别人觉得你很low 侮辱你的职业
字母型权限管理
r : 读权限
w : 写权限
x : 执行权限
u : 拥有者
g : 用户组
o : 其他用户
a : 所有用户
# 格式: chmod - + 权限
# 给自己减少可执行权限,给用户组增加写入权限
chmod u-x,g+w abc
# 给所有用户减少读的权限
chmod a-r abc
# 格式: chmod = 权限
# 给自己设置属主权限为只读,此时原有权限全部消失,只保留新赋予的权限内容
chmod u=r abc
# 给所有用户最高权限
chmod a=rwx abc
# 格式: 混用
# 给用户读写执行权限, 给用户组读写权限, 给其他用户只读权限
chmod u=rwx,g-x,o-wx abc
# 如果我们需要修改当前目录及其目录中子文件的权限,需要使用递归方式完成操作 条件-R选项即可
chmod -R u=rwx,g=rw,o=r aaa
八、vim编辑器的使用
vi编辑器有三种操作模式:
1.命令模式: 使用快捷指令操作文件内容
2.插入模式(编辑模式): 可以输入文字信息,此时快捷指令失效
3.末行模式(底行模式, 底线命令模式): 可以保存,退出或者替换文字等
注意: vi编辑器的三种模式中 插入模式和末行模式之间不能直接跳转,如果想要互相跳转必须先回到命令模式。如下图所示:
命令模式:
插入模式:
底行模式:
命令模式的指令:
命令 | 功能 |
---|---|
o | 在当前行后面插入一空行 |
O | 在当前行前面插入一空行 |
dd | 删除光标所在行 |
ndd | 从光标位置向下连续删除 n 行 |
yy | 复制光标所在行 |
nyy | 从光标位置向下连续复制n行 |
p | 粘贴 |
u | 撤销上一次命令 ,最多可以撤销到文件开启时的状态 |
gg | 回到文件顶部 |
G | 回到文件末尾 |
/str | 查找指定字符串, 可以将str替换为任意字符例如 /abc |
小技巧: 在开发中使用较多的组合 G + o,这个指令主要用于在文件的末尾追加数据信息的操作
末行模式的命令:
命令 | 功能 |
---|---|
:w 文件 | 另存为 |
:w | 保存(ctrl + s) |
:q | 退出, 如果没有保存,不允许退出 |
:q! | 强行退出, 不保存退出 |
:wq | 保存并退出 |
:x | 保存并退出 |
Shift + z + z | 保存退出 |
:set nu | 设置行号 |
:%s/旧文本/新文本 | 文本替换 |
:nohl | 取消高亮 |
注意: 末行模式指令每次执行都要重新输入:,也就是说每一个末行模式指令执行完成后都会回到命令模式或者退出编辑器
OK,今天到这里就结束了,今天我们讲解了Linux的一些其他指令和vim编辑器的用法。Linux的基础知识到这里就告一段落了,下一次开始,我们就将讲解MySQL的基础内容了。