Linux常用命令
包管理工具
apt
- 简介:apt 是一个高级的包管理系统(主要用于基于 Debian 的系统,如:Ubuntu、Kali)
- 语法:
apt [选项] [参数] 软包名
- 参数:
- -y:对安装过程的所有选择都选择 yes
- 选项:
- install:安装软件
- remove:卸载软件
- update:更新本地软件包列表
- upgrade:升级已安装的软件
- dist-upgrade:升级已安装的软件(在软件包依赖关系变化时使用)
- search:搜索软件包
- show:显示软件详细信息
- list –installed:显示已安装的软件
- autoremove:清除缓存
yum
- 简介:yum 是一个高级的包管理系统(主要用于基于 Red Hat 的系统,如:Centos)
- 语法:
yum [选项] [参数] 软件包名
- 参数:
- -y:对安装过程的所有选择都选择 yes
- 选项:
- install:安装软件
- update:更新软件
- remove:卸载软件
- search all:搜索软件
- check-update:检查已安装的软件是否有新版本
- list installed:显示已安装的软件
- clean all:清理缓存
dnf
- 简介:dnf 是 YUM 的后继者,引入了一些改进,如:事务性操作、性能提升等
- 语法:
dnf [选项] [参数] 软件包名
- 参数:
- -y:对安装过程的所有选择都选择 yes
- 选项:
- install:安装软件
- update:更新本地软件包列表
- upgrade:升级已安装的软件
- check-update:检查已安装的软件是否有新版本
- remove:卸载软件
- search:搜索软件
- info:显示软件详细信息
- reinstall:重装软件
- clean:清理缓存
系统命令
- 关机和重启
- poweroff:断电关机
- halt:不断电关机,内存等设备保持运行
- reboot:重启
- shutdown [-参数] [选项]:定时关机
- -P:断电关机
- -h:不断电关机
- -r:重启
- now:立刻关机
- +数字:设定关机延迟时间
- 系统资源相关
- 查看 cpu 信息:cat /proc/cpuinfo
- 查看内存使用情况:free -h
- 查看磁盘使用情况:df -h
- 查看 CPU 使用情况:top [-参数]
- -d:指定自动刷新间隔(单位:秒)
- -o:根据指定的字段进行排序(如:%CPU)
- 网络相关
- 查看网卡信息:ip a
- 添加 IP:ip address add [ip] dev [网卡]
- 删除 IP:ip address del [ip] dev [网卡]
- 查看路由表:ip r
- 添加静态路由:ip route add [ip] via [ip] dev [网卡]
- 删除静态路由:ip route del [ip]
- 启动网卡:ip link set [网卡] up
- 禁用网卡:ip link set [网卡] down
- 查看 TCP 连接:ss -t
- 查看 UDP 连接:ss -u
- 查看监听端口:ss -l
- 查看进程和连接:ss -p
- 查看网络连接统计信息:ss -s
- 查看监听网络端口已经对应的进程 ID:ss -lptn
- 释放当前 IP:dhclient -r
- 通过 DHCP 服务获取 IP:dhclient [网卡]
- 文件下载:curl -C -O [下载地址]
- 系统相关
- 查看系统信息:hostnamectl status
- 修改主机名:hostnamectl set-hostname [hostname]
- shell
- 后台执行命令:[命令] &
- 清屏:clear、
ctrl+l
- 中断程序:
ctrl+c
- 将前台程序调至后台终止执行:
ctrl+z
- 将后台程序调至前台继续执行:fg
- 终止进程执行:kill -9 [pid]
- 复制内容:
ctrl+insert
- 粘贴内容:
shift+insert
- 查看命令的源位置:which [命令]
用户和权限
- su - [用户名]:登录到指定用户
- sudo [命令]:使用 root 权限执行命令
- w:显示登录到系统的用户列表,并展示他们正在执行的命令
- who:显示登录到系统的用户的信息
- whoami:显示当前用户的名称
- groups [用户名]:显示用户所属组
- id [用户名]:显示用户的信息,默认查看当前用户(uid、gid、所属组)
- 添加用户:useradd [-参数] [用户名]
- -g:指定用户的用户组
- -u:指定用户 UID
- -c:添加用户备注
- -M:不创建用户主目录
- -d:指定用户主目录
- 修改用户:usermod [-参数] [用户名]
- -g:指定用户的用户组
- -G:指定用户追加组(追加组影响用户员组)
- -c:添加用户备注
- -L:锁定账户,禁止登录
- -U:解锁账户,允许登录
- 删除用户:userdel [-参数] [用户名](-r:删除用户的主目录)
- 添加用户组:groupadd [-参数] [组名](-g:指定用户 GID)
- 修改用户组:groupmod [-参数] [组名](-g:指定用户 GID)
- 删除用户组:groupdel [组名]
- 用户组操作:gpasswd [-参数] [组名]
- -a:添加用户到组中
- -d:从组中删除用户
- -A:指定组管理员
文件目录
- cd [目录]:跳转到指定目录
- cd /:跳转到根目录
- cd ~:跳转到用户的主目录
- cd -:跳转到上一个目录
- pwd:查看当前目录
- mkdir [目录]:创建目录
- rm [-参数] [目录/文件]:删除文件或目录 (-r 操作目录,-f 强制删除)
- mv [原位置] [新位置]:移动文件或目录到的位置 (如果移动的位置相同则表示改名)
- cp [目录/文件] [位置]:拷贝目录或文件到指定位置
- stat [目录/文件]:查看目录或文件的属性信息
- 查看目录内容:ls [-参数] [目录]
- -l:以长格式显示,包括文件权限、所有者、组、文件大小、修改时间
- -a:显示所有文件,包括隐藏文件
- -h:以合适的单位显示文件大小
- -t:按创建时间排序
- -S:按文件大小排序
- -r:反向排序
- 查看文件内容
- cat [文件]:显文件内容,只适合内容少的文件
- less [文件]:按页显示文件内容
- b 键:上一页
- 空格:下一页
- g:跳转到第一页
- G:跳转到最后一页
- q 键:退出
- 输入/[内容]:搜索文件
- n 键:跳转到下一个匹配搜索的内容
- N 键:跳转到上一个匹配搜索的内容
- head [-参数] [文件]:显示文件前 10 行(-数字:显示行数)
- tail [-参数] [文件]:显示文件后 10 行(-数字:显示行数,-f:监控文件更新)
- 文件权限
- 设置文件权限:chmod [-参数] [权限] [文件/目录]
- 参数:-R(表递归的修改目录的子目录和文件)
- 权限:数字表示(4-读、2-写、1-执行)字母表示(r-读、w-写、x-执行)
- u+rwx:表示给文件所有者加上文件读写执行的权限
- g=rwx:表示给文件所属组设置文件读写执行的权限
- o-rwx:表示给其他用户移除文件读写执行的权限
- u=rw,g=x,o=:表示给文件所有者设置文件读写权限,给文件所属组设置文件执行权限,给其他用户设置文件权限为空
- 777:每个数字依次表示为:文件所有者、文件所属组、其他用户,都设置读写执行权限(7=4 读+2 写+1 执行)
- 修改文件所有者:chown [-参数] [所有者] [文件/目录]
- 修改用户所属组:chown [-参数] [所属组] [文件/目录]
- 参数:-R(表递归的修改目录的子目录和文件)
- 设置文件权限:chmod [-参数] [权限] [文件/目录]
解压缩
- 常用的压缩格式
tar
:tar 打包文件,将多个文件归档为一个文件gz
:gz 压缩文件,压缩速度快、压缩比较低,压缩目录前需要使用 tar 先打包bz2
:bzip2 压缩文件,压缩速度较慢、压缩比较高、支持直接压缩目录xz
:xz 压缩文件,压缩速度最慢、压缩最高zip
:zip 压缩,广泛支持的格式,适用于 Window 和 Linuxrar
:rar 压缩,Windows 支持但 Linux 默认不支持,需要单独下载rar
和unrar
工具操作
- 归档和解压缩
- tar [-参数] [压缩文件名] [文件/目录]
- -v:显示处理过程
- -f:指定归档文件
- -c:创建归档文件
- -x:拆解归档文件
- -z:使用 gz 进行解压缩
- -j:使用 bz2 进行解压缩
- -J:使用 xz 进行解压缩
- 常用命令参数
- tar 归档:tar -cvf [压缩文件名].tar [文件/目录]
- tar 拆解:tar -xvf [压缩文件名].tar
- gz 压缩:tar -czvf [压缩文件名].tar.gz [文件/目录]
- gz 解压:tar -xzvf [压缩文件名].tar.gz
- bz2 压缩:tar -cjvf [压缩文件名].tar.bz2 [文件/目录]
- bz2 解压:tar -xjvf [压缩文件名].tar.bz2
- xz 压缩:tar -cJvf [压缩文件名].tar.xz [文件/目录]
- xz 解压:tar -xJvf [压缩文件名].tar.xz
- tar [-参数] [压缩文件名] [文件/目录]
文件查找
- find [路径] [-参数](路径用于指定从什么地方开始查找)
- -name:指定文件的名称,支持通配符
*
和?
,表示匹配多个和一个字符 - -type:指定文件的类型(f:文件;d:目录;l:链接)
- -size:指定文件的大小(+1G 表示大于 1GB;-10k 表示小于 10KB)
- -user:指定文件的所有者
- -group:指定文件的所属组
- -mtime:指定文件的修改的日期(+3 表示 3 天前;-2 表示 2 天内)
- -name:指定文件的名称,支持通配符
日期管理
- 时间和时区管理:
- 查看时间和时区信息:timedatectl
- 查看可用的所有时区:timedatectl list-timezones
- 设置时区:timedatectl set-timezone [时区]
- 设置时间:timedatectl set-time [时间]
- 查看当前时间:date
- 格式化语法:date +”格式化表达式”
- %F:完整年月日(等价于
%Y-%m-%d
) - %T:时分秒(等价于
%H:%M:%S
) - %R:时分(等价于
%H:%M
) - %Y:年份
- %y:年份(后两位)
- %m:月份
- %d:日期
- %H:小时(24 小时制)
- %l:小时(12 小时制)
- %M:分钟
- %S:秒种
- %A:星期
- %p:上午/下午
- %s:时间戳
- %F:完整年月日(等价于
进程管理
- ps -aux:查看系统所有进程
- USER:进程的启动者
- PID:进程 ID
- %CPU:使用 CPU 的占比
- %MEM:使用内存的占比
- VSZ:虚拟内存的使用量(单位 KB)
- RSS:物理内存的使用量(单位 KB)
- TTY:所在终端
- STAT:状态
- START:启动时间
- TIME:使用 CPU 的积累时长
- COMMAND:启动进程的命令和参数
- ps -ef:查看父子进程之间的关系
- UID:进程的启动者
- PID:进程 ID
- PPID:父进程的 PID
- C:使用 CPU 的占比
- STIME:启动时间
- TTY:所在终端
- TIME:使用 CPU 的积累时长
- CMD:启动进程的命令和参数
服务管理
- systemctl [操作] [服务]
- status:查看服务状态
- start:启动服务
- stop:停止服务
- restart:重启服务
- enable:设置服务开机自启
- disable:关闭服务开机自启
- list-unit-files:查看已安装的服务列表及其状态
定时任务
- crontab 配置文件:/etc/crontab
- crontab -l:显示计划任务列表
- crontab -e:编辑 crontab 文件
1 |
|
防火墙管理
- firewall-cmd [选项]
- 查看已有规则:–list-all
- 重新加载规则:–reload
- 查询是否开启端口:–query-port=[端口]/[协议]
- 端口配置:–zone=public –[add/remove]-port=[端口]/[协议] –permanent
- –add-port:添加开放端口
- –remove-port:删除开放端口
- –permanent:永久开启,不设置此项重启失效
- –zone:作用域
- 查看开放的服务:–get-services
- 配置服务:–zone=public –[add/remove]-service=[服务] –permanent
- –add-service:添加服务
- –permanent:永久开启,不设置此项重启失效
- –zone:作用域
- iptables
Linux常用命令
http://tblog.zh-ti.top/2023/02/13/linux-command/