# Linux
## Vim
Esc 模式切换
:q 退出
:q! 强制退出不保存
正常模式下 yy+p 拷贝当前行 5yy+p 拷贝当前行向下的5行
正常模式下 dd+p 删除当前行 5dd+p 删除当前行向下的5行
正常模式下 查询文件中的某个单词 /关键词 回车 查找 输入n就是查找下一个
正常模式下 设置文件的行号 :set nu
正常模式下 取消文件的行号 :set noun
正常模式下 使用快捷键到文件末行输入G 首行 输入gg
正常模式下 撤销上步输入 输入u
正常模式下 快速定位到指定行数 输入 行号+Shift+g
## 关机
shutdown -h now :表示立即关机
shutdown -h 1 :表示一分钟后关机
shutdown -r now :表示立即重启
halt 就是直接使用表示关机
reboot 就是重启系统
sync 关机或重启时,都应该执行syn,把内盘的数据保存到磁盘防止数据丢失
## 用户的登陆和注销
登陆时尽量少用root账号登陆,因为他是系统管理员,最大的权限,避免操作失误。可以利用普通用户登陆,
登陆后再用“ su -用户名” 命令来切换成系统管理员身份。
logout 退出注销
## 用户管理
useradd [选项] 用户名 添加用户 ,当创建用户成功后,会自动的创建和用户同名的家目录
useradd -d 指定目录 新的用户名 ,给新创建的用户指定家目录
useradd -g 用户组 用户名 ,添加用户时加上组
usermod -g 用户组 用户名 ,修改用户所在的组
password 用户名 ,给用户指定密码
userdel 用户名 ,删除用户保留家目录
userdel -r 用户名 ,删除用户和家目录
id 用户名 ,查询用户信息
su -u 切换用户名 ,切换用户,会退原先用户使用**exit**指令
whoami ,查看当前用户/登录用户
groupadd 组名 ,新添组
groupdel 组名 ,删除组
## 用户和组的相关文件
/etc/passwd 文件
用户 (user)的配置文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell/etc/shadow文件
/etc/shadow文件
口令的配置文件
每行的含义:登录名;加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group 文件
组(group)的配置文件,记录Linux包含的组的信息
每行含义:组名:口今:组标识号:组内用户列表
# 实用指令
CTRL+L 清屏
## 运行级别指令
运行级别说明:
0:关机
1 : 单用户[找回丢失密码]
2: 多用户状态没有网络服务
3:多用户状态有网络服务
系统未使用保留给用户4:
图形界面5:
系统重启6:
常用运行级别是 3 和 5 ,要修改默认的运行级别可改文件/etc/inittab 的 id:5:initdefault:这一行中的数字
切换指定运行级别的指令
init [0123456]
## 忘记root密码
思路: 进入到单用户模式,然后修改密码,因为单用户模式,root不需要设置密码就可以登陆
开机->
在引导时输入 回车键->
看到一个界面输入 e->
看到一个新的界面,选中第二行(编辑内核)在输入 e->
在这行最后输入 1.再输入 车键>
再次输入 b,
这时就会进入到单用户模式这时,我们就进入到单用户模式,使用 passwd 指令来修改 root 密码。
### 帮助指令
man [命令或者配置文件] ,功能描述:获取帮助信息 ,man ls
help 命令 ,功能描述:获取shell内置命令描述,help ls
## 文件目录指令
pwd ,显示当前工作目录的绝对路径
### 显示当前的所有文件和目录
ls [选项] [目录或者文件] ,
选项 -a 显示当前的所有文件和目录,包括隐藏的
选项 -l 以列表的方式显示
### 切换指定目录
cd [参数] ,切换指定目录
参数 cd~或者cd :回到自己的家目录
参数 cd.. :回到当前的目录的上一级目录
### 要创建的目录
mkdir [选项] 要创建的目录 ,(make directory) mkdir /home/hyj
选项 -p :创建多级目录 ,mkdir /home/hyj/hugang
### 要删除的空目录
rmdir [选项] 要删除的空目录 ,(remove directory)rmdir /home/hyj
选项 -rf 删除非空的目录 ,rmdir -rf /home/hyj
### 创建一个空文件
touch 文件名[文件名...] 创建一个空文件,touch hyj.txt
### 拷贝文件
cp [选项] source dest ,source源文件、dest目标,拷贝文件到指定目录 cp hyj.txt aaa/
选项 -r :递归的复制整个文件夹 cp text/ hyj/
选项 \cp :强制覆盖不提示 \cp text/ hyj/
### 删除文件或目录
rm [选项] 要删除文件或目录 rm a.txt
选项 -r :递归删除整个文件夹
选项 -f :递归删除不提示 rm -rf bbb\
### 移动文件
mv oldNameFile newNameFile (重命名) mv aaa.txt pig.txt
mv /temp/movefile /targetFolder (移动文件) mv pig.txt /root
### 查看文件
cat [选项] 要查看的(只读)文件 cat /etc/profile
选项 -n表示行号 cat -n /etc/profile
选项 |more 一般会带上分页显示 空格下一页 cat -n /etc/profile|more
more 文件 基于vi编辑器的文本过滤器,他以全屏的方式按页显示文本内容
操作space(空格) 表示向下翻一页
操作Enter 表示向下翻一行
操作q 表示立刻离开more,不在显示该文件内容
操作Ctrl+F 表示向下滚动一屏
操作Ctrl+B 表示返回上一屏
操作= 表述输入当前行号
操作:f 表示输入当前行号和文件名
less 文件 用来分屏显示文本内容
操作space(空格) 表示向下翻一页
操作pagedown 表示向下翻一页
操作/字符 表示向下搜寻字符功能。n:向下查找;N:向上查找
操作?字符 表示向下搜寻字符功能。n:向下查找;N:向上查找
操作q 表示离开less程序
### >指令和>>指令
指令>输出重定向 :会将原来的文件的内容覆盖
指令>>追加: 不会覆盖原来文件的内容,而是追加到文件的尾部
ls -l > 文件 (功能描述:ls-1查询列表的内容写入文件 atxt中(盖写))
ls -la >> 文件 (功能描述:列表的内容追加到文件 aa.txt 的末尾)
cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
echo "内容” >> 文件 1 (功能描述:将内容追加到文件1)
### echo指令 输出内容到控制台
echo [选项] [输出内容]
输出环境变量 echo $path
echo "helloworld"
### head指令
用于显示文件开头部分内容,默认情况head指令显示文件前10行
head 文件 查看文件前10行内容
head -n 5 文件 查看文件头5行的内容
### tail指令
用于显示文件结尾部分内容,默认情况tail指令显示文件后10行
tail 文件 查看文件前10行内容
tail -n 5 文件 查看文件头5行的内容
tail -f 文件 实时追踪文档的所更新的内容
### 软链接
类似于Windows快捷方式
ln -s [源文件或目录] [软链接名] 功能:给源文件创建一个软连接 In -s /root LinkRoot
rm -rf 软链接名 功能:删除软链接 rm -rf 软链接名
### 查看历史指令
history 功能:查看所有已经执行过的历史指令
history 10 功能:查看10已经执行过的历史指令
!10 功能:执行编号为10的历史指令
## 时间日期型指令
## 显示当前时间
data 功能:显示当前时间
data+%Y 功能:显示当前年份
data+%m 功能:显示当前月份
data+%d 功能:显示当前那日
data+%Y-%m-%d %H:%M:%S 功能:显示当前年月时分秒
## 设置日期
data -s 字符串时间 ,data -s "2023-7-25 11:22:22"
### 日历
cal [选项] 功能:不加选项,显示本月日历
cal 2023 显示一整年日历
## 搜寻查找类指令
find [搜索范围] [选项] 将从指定目录向下递归遍历各个子目录,将满足条件的目录或者文件显示在终端
-name 按照文件名的方式查找模式查找文件 find -name hello.txt
-user 查找属于指定用户名所有的文件 find /opt -user nobody
-size 按照指定的文件大小查找文件 find / -size +20(+n 大于 -n小于 n等于)
locaate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。
·基本语法
locate 搜索文件
·特别说明
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数
据库。
updatedb
locate hello.txt
### grep指令和管道符号|
grep过滤查找,管道符|,表示前一个命令处理结果传递给后面命令处理。
grep [选项] 查找内容 源文件
-n 显示匹配行和行号
-i 忽略字母大小写
cat hello.txt | grep -n yes 查找文件中yes所在的行
### gzip 压缩、gunzip解压缩指令
gzip 文件 ,功能:压缩文件,只能将文件压缩为*gz文件 压缩后不会保留原文件
gunzip 文件 ,功能:解压缩文件命令
### zip 压缩、unzip 解压缩指令
zip [选项] XXX.zip 将要压缩的内容( 功能:压缩文件和目录的命令)
-r 递归压缩,即压缩目录
zip -r aaa.zip /home/ 将/home下所有文件压缩成aaa.zip
unzip [选项] XXX.zip 解压缩文件
-d<目录> :指定压缩后文件的存放目录
unzip -d /opt/tmp aaa.zip 将解压文件放到/opt/tmp
### tar打包指令
最后打包的文件 .tar.gz
tar [选项] XXX.tar.gz 功能:打包目录,压缩后的文件格式.tar.gz
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包.tar文件
tar -zcvf myhome.tar.gz /home/ 将home的文件 压缩成myhome.tar.gz
tar -zxvf a.tar.zg 将a.tar.zg解压到当前目录
### linux网络配置
service network restart 重启网络服务
reboot 重启系统
## 进程管理
### 显示系统执行的的进程
ps -aux
ps -a 显示当前终端的所有进程的信息
ps -u 以用户的格式显示进程信息
ps -x 显示后台进程运行的参数
ps -ef 以全格式显示当前的所有进程
-e 显示所有进程
-f 全格式
### 终止进程kill和killall
kill [选项] 进程号 通过进程号杀死进程
kill -9 进程号 表示强迫进程立即停止
killall 进程名称 通过进程名称杀死进程,也支持通配符
## 服务管理
service 服务名 [start|stop|restart|rload|status]
CentOs7 后使用 systemctl 服务名 [start|stop|restart|rload|status]
systemctl stop firewalld.service 关闭防火墙
systemctl start firewalld.service 开启防火墙
systemctl enable firewalld.service 开启开机启动
systemctl disable firewalld.service 关闭开机启动
systemctl status firewalld 查看防火墙状态
firewall-cmd --reload 重启防火墙(重新载入,更新配置)
firewall-cmd --zone=public --add-port=80/tcp --permanent 开启端口
firewall-cmd --query-port=80/tcp 查询某个端口是否开放
## rpm包管理
rpm -qa | grep xx 查看已安装的rpm列表
rpm -ql 软件包名 查看软件包中的文件
rpm -e RPM包的名称 卸载rpm包
rpm -ivh RPM包全路径的名称
i=install 安装
v=verbose 提示
h=hash 进度条
## yum包管理
yum list |grep xx 软件列表
yum install xxx 下载安装
linux 常用命令
最新推荐文章于 2024-08-30 14:11:28 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)