广州37期蓝沅幸 发表于 2021-12-10 17:53:43

Linux-Xshell系统操作命令

Linux权限管理三剑客:
chmod:改变文件或目录权限
chown:改变文件的属主(拥有者)
chgrp:改变文件的属组(拥有组)
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\4792b1f0b157481fb2d1e708c1f91a9c\image1.png

-rw-r--r--.   1 root root   514 Dec7 22:17 head_tail.txt
这是一个文件,第一个字符为 ‘-’ 说明这是一个文件
后面的第一个组rw-表示文件的拥有者root对它有
读和写的权限,第二组r--表示在root用户组里面的用户
对这个文件只有读权限,最后的r--表示其他用户对这个文件也只有读权限

r read 读 ==》 权限4
w write 写 ==》 权限2
x execute 执行 ==》权限1
- 表示对应位置没有权限 ==》 权限0

r 读权限对应的命令有:cat、less、more、head、tail等等
w写权限对应命令有: vim/vi、cp、mv等等
x 执行权限对应的命令有:sh 执行shell脚本的命令、cd

chmod 777 +目录/文件:给一个文件或者目录
赋予最高权限
r+w+x=4+2+1=7 读写执行权限相加
给gzdcs文件赋予只有用户组有写权限
chmod 020 gzdcs

chmod g+r 文件:对文件的拥有组加读权限
chmod g-w 文件:对文件的拥有组去掉写权限
chmod u+w 文件:对文件的拥有者加写权限
chmod o+x 文件:对其他用户增加对文件的执行权限
chmod +r 文件:对所有的用户增加这个文件的读权限


u:属主 user简称u:文件拥有者
g:属组 group简称g:文件的拥有组里面的所有用户
0:其他用户others简称0:既不是文件的拥有者
也不算文件的拥有组里面的用户

chmod -R 777 目录: 参数-R作用是对目录及目录
里面所有的文件和子目录都进行赋予权限

chown dcs37 +文件:把文件的拥有者修改为dcs37
这个用户
chown root:dcs37 文件:把文件的拥有者修改
为root,和文件的拥有组修改为dcs37

chgrp dcs37 文件:把文件的拥有组修改为dcs37

------打包操作----
Linux系统常见的包:tar,tar.gz,zip,gzip,war包
打tar包:
tar -cvf +包名称 .tar +原文件
打包后的文件,会比原文件大
c表示打包操作,V表示打包的进度,f表示打包的文件

解tar包
tar-xvf +包名 .tar
x表示解包操作

打tar.gz包
tar -zcvf +包名.tar.gz +原文件
z表示这是tar.gz包的操作
解tar.gz包
tar -zxvf +包名 .tar.gz
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\b000c1b4785646b78ede1c528f2211ec\image2.png

打zip包:
zip +包名.zip +原文件 =》对文件进行打 zip包操作
zip -r +包名 .zip +原目录 ==》对目录以及里面所有
的文件进行打zip包的操作,否则只会对目录进行打包
,里面的文件是不会加到包里面


解zip包:
unzip +包名.zip
tar包,tar.gz包和zip包都可以对目录进行打包操作,
但是我们对目录打成zip包就必须要添加 ‘-r’,参数
,否则只能对目录进行打包,不会对目录里面的内容
进行打包

gz包只能对文件进行操作 ,不能对目录进行操作打
gz包:
gzip +文件名

解gz包:
gunzip +gz包文件
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\f3d82f4ed82e41c284ecc27f27fad4d1\image3.png

yum install +应用名 == 在线下载安装应用
yum list == 查看可以安装的yum工具

rpm命令: 离线安装命令
rpm -ivh +rpm安装包
i:安装软件包
v:可视化,可以看到更多的安装信息
h:显示安装的进度

rpm -qa:查看本机安装好的工具
rpm -e 应用名称:卸载对应的应用

两台Linux服务器之间的文件传输
前提:要知道对方服务器的IP,用户名,密码,
对方文件的绝对路径
2.两台服务器必须是在同一个局域网

A服务器--本地
B服务器--对方
scp命令:
1.从A服务器到B服务器取文件
scp +B用户名@B服务器IP;B服务器文件的绝对路径
+本地服务器的路径
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\3987b29314364a31b0b4529a4b495a60\image4.png
如果需要对目录进行传输,那么要加参数 -r
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\e15048e444cf48fabaf13e92b50d4c41\image5.png
2.从A服务器把文件送到B服务器--上传scp +本地
文件的绝对路径 +B用户名@B的IP:B服务器存放
的绝对路径
scp -r +本地目录的绝对路径 +B用户名@B的
IP:B服务器存放的绝对路径

*涉及到对方服务器的都是要写绝对路径

FTP工具:
ftp文件传输协议
sftp安全的文件传输

步骤:
1.输入 sftp +对方服务器IP===进入ftp工具
2.输入对方的root用户密码
3.出现sftp>表示已经进入sftp工具,并连接到
对方的服务器,在这个工具里面敲的指令就是
sftp工具的指令(跟Linux指令有点像,但完全就
不是Linux指令)
4.使用get或put命令
(1)get命令 下载命令 拿 从对方服务器拿文件
到本地服务器
get +B服务器的文件路径 +本地服务器的存放路径
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\d5f173609d764fad9f08e66f5de6e43d\image6.png
(2)put命令 上传命令 放 向对方服务器放文件
put +本地服务器文件的路径 +B服务器的存放路径

5.exit 退出当前协议


假如虚拟机没有ip:
1.重启Linux系统的网卡:使用root用户,执行service
network restart
2.在Windows系统,‘win’ +R调出运行窗口,
输入services.msc,点确定进入 ‘服务’窗口,
输入英文VM,把VM开头的服务全部重启一遍
然后回到虚拟机重启Linux系统的网卡:使用
root用户,执行service network restart

--------------------------------------------------
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\505d51cc57704842bd09873373444b74\image7.png
df命令 查看磁盘使用情况
df -h 带单位的窗口磁盘使用情况
du -sh:查看当前目录的使用磁盘空间大小
的情况
du -sh +文件/目录的路径:查看对应文件或者
目录使用磁盘空间大小的情况

free:查看Linux系统的内存情况
free -m:以M兆为单位进行显示

top 动态显示当前Linux系统CPU使用情况
内存使用情况----性能监控的命令
一般用于查看Linux系统的性能,如果系统出现
系统响应缓慢,死机的情况,我们可以通过top
命令窗口当前系统占用内存或者CPU比较高的
有什么服务,查看对应的PID(进程号),然后
就可以进行相关的优化
服务器的性能要求:CPU使用率需要控制住
80~85%以内,高于这个值就需要优化了

top的内部命令
N: 以PID的大小进行排列显示进程列表
P: 以CPU使用率大小进行排序进程
M:以内存使用率大小进行排序进程


top命令的参数:
top -p +进程号:查看指定进程的性能情况
top -d+数字:需要多少秒刷新一次结果,不
要小于3


ps -ef |grep ‘任务名称’:查找对应任务的进程号
ps -ef |grep ‘流程号’:查看对应进程号的任务

C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\8fd1d9dfa8a7432db399662781a6dec1\image8.png

kill -9 +对应服务的PID:强制杀死服务

面试题:怎么查看服务已经启动?
ps -ef |grep +服务名称 ==查看服务是否启动

如何查看端口是否被占用?不知道端口号的
情况下怎么查看?
1,netstat -ntlp/nltp ==查看当前已经使用的端口
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\cb3675dea28e4688ba157894dab44df0\image9.png
2.netstat -anp|grep‘端口号’==查看端口
是否被占用
3.lsof -i:端口号 ==查看端口号是否被占用



who:查看当前系统的登陆用户有哪些
whoami:查看当前的操作用户
hostname:查看主机名称,显示物流位置
uname:显示系统名称
getconf LONG_BIT:显示系统的位数
32位系统最多是支持4G的内存 ,64位系统
理论上支持最多内存是256G,理论上64位
系统比32位快2倍

Linux系统操作的指令都是有记录的
history:查看历史操作记录

clear:清空当前屏幕
date:查看当前Linux服务器的时间日期
修改服务器时间:date -s +需要修改的时间
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjv7ckb1Px3iBt9csn8USSJI\462070dd70f649d2a896230f0c38b48f\image10.png

alias指令:自定义命令
alias ==查看当前系统有什么自定义命令
alias +自定义命令=其他命令 ==当执行自定义
命令时,其实就是执行 其他命令

unalias +自定义命令:取消自定义命令

ln命令:创建链接
软链接:好比是Windows系统的快捷方式
创建软连接一定使用绝对路径
ln -s +引用的文件的绝对路径 +链接文件的路径

硬链接:===本质上还是文件,相当于文件备份
ln -d +引用文件的绝对路径 +链接文件的路径
硬链接文件和原文件的内容是相互关联着的,但
是删除任意一方不影响另一方


service 服务指令
service xxx (服务名称) start ==启动服务
service xxx (服务名称) stop ==停止服务
service xxx (服务名称) restart ==重启服务
service xxx (服务名称) status ==查看服务
状态

防火墙服务 iptables
service iptables stop == 关闭防火墙
service iptables status ==查看防火墙运行状态
service iptables start ==启动防火墙
service iptables restart ==重启防火墙

vim是vi的升级版
vim文本编辑器 ---进去之后把你的鼠标扔掉
vim里面的内置命令不是Linux指令

1.命令模式:
:q ==直接退出,前提不能修改文件
:q! ==强制退出,当修改过文件,又不希望
保存
:w ==保存
:wq ===先保存再退出
:wq! ==强制保存并退出
命令后面加 ’!‘ 表示强制执行
(1)命令模式不能进行编辑
(2)从编辑模式进入命令模式,按Esc键
(3)在vim工具中不要使用Ctrl + s保存,因为Ctrl+s
会导致生成一个隐藏的缓存文件,(.swp后缀的文件)
会导致你的文件无法保存,可以删除该隐藏问
进入该文件中

2.编辑模式:必须要进入编辑模式后才可以对文件
进行内容编辑
i ==按 ’i‘ 进入编辑模式,在光标使用位置的前面
进行输入
I ==大写的 ’I‘ 进入编辑模式,回到行首进入编辑
模式
a== 光标后移一位,进入编辑模式
A===光标移动到行末进入编辑模式
o==光标所在行往下插入一行进入编辑模式
O==光标所在行往上插入一行进入编辑模式
x==删除光标所在位置的字符
X==删除光标前面的一个字符,但是不能退行
dd==一次性删除一行的内容
D==删除光标所在位置至行末的字符
u==撤销功能
r==替换光标所在位置的一个字符
yy==复制光标所在的当前行内容
p==把复制的内容粘贴到下一行
P==把复制的内容粘贴到上一行
3yy==复制光标所在行开始3行

3.末行模式==在退出编辑模式后,输入 ’:‘
在页面的最后一行,所以叫做末行模式
:/关键字==查找文件中所有的 ’关键字 ‘
并且高亮显示
:noh ==取消高亮显示
:set nu ==显示行号
:set nonu ==取消行号

把一个文件的指定范围的行的内容写入
到一个新文件中(只能写到新文件,会
自动生成一个新文件)
:1,10w +新文件的绝对路径 (复制当前文件的
1到10行,写入到新文件中)

面试题:
vvim中替换文本内容
:%s/原字符/新字符/g
:%s/23/dcs37/g ===把文件中所有的 ’23‘ 替换
为dcs37

%s表示替换
/表示分隔符
/g表示全局,不加g参数,只能替换每一行的
第一个匹配到的字符




页: [1]
查看完整版本: Linux-Xshell系统操作命令