广州37期_szf 发表于 2021-12-10 22:11:37

Linux常见命令

一、Linux权限管理三剑客
chmod:改变文件或者目录权限
chown:改变文件的属主(拥有者)
chgrp:改变文件的所组(拥有组)
例如
-rw-r--r--. 1 root root 1000 Oct6 08:32 file1 file1的权限
r: 读权限,用数字4表示--read
w:写权限 ,用数字2表示--write
x: 执行权限,用数字1表示--execute
总共有10位 第1位“-”代表这是一个文件 前3位(黑色),代表着用户主拥有的权限, 中3位(红色),代表着用户组拥有的权限, 后3位(蓝色),代表着其他人拥有的权
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\a1e5e47d69fa44f6b35b76774bd1efa0\clipboard.png
r读权限对应的命令有:cat、less、more、head、tail等
w写权限对应的命令有:vim/vi、cp、mv等
x执行权限对应的命令有:sh(执行shell脚本的命令)、cd

1】修改权限:chmod 777 +文件/目录:给一个文件/目录赋予最高权限
chmod g+r 文件:对文件的拥有组加读权限
chmod g-w 文件:对文件的拥有组去掉写权限
chmod u+w 文件:对文件的拥有者加写权限
chmod +r 文件:对所有的用户增加这个文件的读权限
chmod -R 777 目录:参数-R作用是对目录及目录里面所有的文件和子目录都进行赋予权限

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

2】修改拥有主:chown dcs37 文件:把文件的拥有者修改为dcs37这个用户
3】修改拥有组:chgrp dcs37 文件:把文件的拥有组修改为dcs37


二、打包操作
linux系统常见的包:tar、tar.gz、zip,gzip、war包

1】打tar包:
tar -cvf +包名称.tar+源文件
打包后的包文件会比原文件大
c表示打包操作,v表示打包的进度,f表示打包的文件
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\074cf8d127f4422fbac124053ffba395\clipboard.png
2】解tar包
tar -xvf +包名.tar
x表示解包操作
3】打tar.gz包
tar -zcvf +包名.tar.gz +原文件
z表示这是tar.gz包的操作
4】解tar.gz包
tar -zxvf +包名.tar.gz
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\cce195319a134469a350f50529cb03fb\clipboard.png

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

注意:tar包、tar.gz和zip包都可以对目录进行打包操作,但是对目录打成zip包就必须要添加“-r”参数,否则只能对目录进行打包,不会对目录里面的内容进行打包

7】打gzip包:只能对文件进行操作,不能对目录进行操作,而且不管打包还是解包,原文件都会消失
gzip +文件名
8】解gzip包:
gunzip +gz包文件

````````````````````````````````````````````````````````````````````````````````````
rpm命令:离线安装命令
rpm -ivh +rmp安装包
i:安装软件包
v:可视化,可以看到更多的安装信息
h:显示安装的进度
rpm -qa:查看本机安装好的工具
rpm -e +应用名称:卸载对应的应用
```````````````````````````````````````````````````````````````````````````````````
两台linux服务器之间的文件传输
前期:1、要知道对方服务器的Ip,用户名,密码,对方文件的绝对路径
      2、两台服务器必须是在同一个局域网
scp命令
A服务器===本地服务器;B服务器===对方服务器
1】、从A服务器到B服务器取文件
scp +B用户@B服务器IP:B服务器文件的绝对路径 +A本地服务器的路径
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\9079c11483b746a8a4a6c5ad778d3536\clipboard.png
如果需要对目录进行传输,那么需要添加参数:-r

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命令
   get命令(下载命令、拿):从对方服务器那文件到本地服务器
   get +B服/s务器的文件路径 +本地服务器的存放路径

C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\92bccc6bce934190a82bc90d6754f369\clipboard.png

C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\2df2d349804f46daafdc527810189e64\clipboard.png
   put命令(上传命令 放):向对方服务器存放文件
   put +本地服务器文件的路径 +B服务器的存放位置
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\aa36dc5ea5dc4f4b9740a3b6dd6c759e\clipboard.png
5】exit退出当前协议


``````````````````````````````s````````````````````````````````````````````````````````
df查看磁盘的使用情况
df -h :带单位的查看磁盘使用情况
du -sh:查看当前目录的使用磁盘空间大小的情况
du -sh +文件或目录的路径:查看对应文件或目录的使用磁盘空间大小的情况

`````````````````````````````````````````````````````````````````````````````````````
free:查看linux系统的内存情况
free -m :以M兆为单位进行显示系统内容情况
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\777074189c9546df8d5a58337ea22ae5\clipboard.png

````````````````````````````````````````````````````````````````````````````````````````
top:动态显示当前linux系统cpu使用情况,内存使用情况----性能监控的命令
一般用于查看linux系统的性能,如果系统出现卡机、响应缓慢、死机的情况,我们可以通过top命令查看系统占用内存或者CPU比较高的有什么服务,查看对应的Pid(进程号),然后就可以进行相关优化
服务器的性能要求:cpu使用率和内存使用率需要控制在80-85%以内,高于这个值需要优化
top的内部命令:
N:以PID的大小进行排列显示进程列表
P:以CPU使用率大小进行排序进程
M:以内存使用率大小进行排序进程
top命令的参数
top -p +进程号:查看指定进程的性能情况
top -d +数字:需要多少秒刷新一次结果,不要小于3
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\0446db5e270046a0a9d5f21e68356319\clipboard.png

ps -ef|grep +‘服务名称’:查看某个服务的进程
ps -ef|grep +‘进程号’:查看对应进程号的任务
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\19dbb87c396d4b96bbd7183ca31ed250\clipboard.png

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

面试题:
1、怎么查看服务已经启动?
ps -ef|grep +"服务名称"====》查看服务是否启动
2、如果查看端口是否被占用?不知道端口号的情况下怎么查看
1】netstat -ntlp ====》查看当前已经使用的端口
2】netstat -anp|gerp “端口号”==》查看端口号是否被占用
3】lsof -i:端口号 ===》查看端口号是否被占用
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\09e91b8b47d9447cac76ab9836d3ee65\clipboard.png

不常用的指令
who:查看当前系统的登录用户有哪些
whoami:查看当前的操作用户
hostname:查看主机名称,显示主机位置
uname:查看系统名称
getconf LONG_BIT:显示系统的位数32位或者64位
32位系统最多是支持4G的内存,64位系统理论上支持最多内存是256G,理论上64位系统比32位快2倍
linux系统操作的指令都是有记录的
history:查看历史操作记录
clear:清空当前屏幕
date:查看当前linux服务器的时间
修改服务器时间:date -s +需要修改的时间
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\640c8db1456b47a7a9a13f749aafbce9\clipboard.png

C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\103e0b594e414bd5a33b60e107059eb3\clipboard.png

alias指令:自定义命令
alias===》查看当前系统有什么自定义命令
alias +自定义命名=其他命令==》当执行自定义命令时就等同于执行 其他命令
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\1ec46c39a847438b8aff9f162759a068\clipboard.png
unalial +自定义命令===》取消自定义命令

`````````````````````````````````````````````````````````````````````````````
ln命令:创建链接
软链接:好比是Windows系统的快捷方式(可针对文件或者目录)
创建软链接一定使用绝对路径
ln -s +引用的文件的绝对路径 +链接文件的路径
C:\Users\宋志飞\AppData\Local\YNote\data\weixinobU7Vjs-DKkeUuC7ynrRiTG3tdb0\ed24eb8c147949828bf1087b9c76a17c\clipboard.png
硬链接:本质上还是个文件,相当于文件备份(只针对文件,不能对目录操作)
ln -d +引用的文件的绝对路径 +链接文件的路径
硬链接文件和原文件的内容是相互关联着的,但是删除任意一方是不影响另一方

````````````````````````````````````````````````````````````````````````````````````````
service 服务指令
service xxxx(服务名称) start===》启动服务
service xxxx(服务名称) stop====》停止服务
service xxxx(服务名称) restart==》重启服务
service xxxx(服务名称)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工具中不要使用Ctrll+s保存,因为Ctrl+s会导致生产一个隐藏的缓存文件,会导致你的文件无法保存,可以删除该隐藏文件重新进入该文件中

   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行,写入到新文件中:

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

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






页: [1]
查看完整版本: Linux常见命令